API reference

python:arxjit:arxjit.reconcile

module reconcile

arxjit.reconcile

Source: packages/arxjit/src/arxjit/reconcile.py:1

Signature reconciliation for arxjit.

Third stage of the arxjit pipeline: decide which Signature a validated function will be compiled against. An explicit signature= passed to @jit is the source of truth and wins outright; otherwise the signature is derived from the function's Python annotations; a function with neither is reported and stays interpreted. Annotations are read from the ast rather than from annotations so that a module using "from future import annotations" behaves identically, and so every diagnostic can point at the exact annotation that caused it. Following from that, int, float and bool are reserved annotation spellings in a @jit function: they select i64, f64 and bool_ by name, independently of Python name resolution, so what those names are bound to where the function was defined does not change what the compiler is asked for. See _annotation_type for why resolving them through the defining namespace cannot be made sound.

Functions

Search documentation

Type to search.