{
  "$schema": "https://ambiqai.github.io/helia-ui/schema/reference-model-1.json",
  "generatedFrom": {
    "sourceCommit": "cf2246a7ad439fa38d57462118e7840e5497a685",
    "tool": "pyref",
    "version": "1.7.3"
  },
  "language": "python",
  "modules": [
    {
      "description": "Explicit registry context binding every extension point of one conversion.\n\nA conversion resolves parsers, operator classes, transforms and option classes\nthrough a ``RegistryContext`` rather than module-level globals, so callers\ncan extend or replace built-ins per conversion without cross-test leakage.",
      "name": "context",
      "path": "helia_aot.registry.context",
      "submodules": [],
      "summary": "Explicit registry context binding every extension point of one conversion.",
      "symbols": [
        {
          "description": "`dataclass`\n\nThe five registries a conversion dispatches through.",
          "examples": [],
          "id": "helia_aot.registry.context.RegistryBundle",
          "kind": "class",
          "language": "python",
          "members": [
            {
              "description": "Model-level hooks run while loading a LiteRT model.",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryBundle.litert_model_hooks",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "litert_model_hooks",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "litert_model_hooks: Registry[str, LiteRtModelHook]",
              "source": {
                "line": 38,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L38"
              },
              "summary": ""
            },
            {
              "description": "LiteRT operator parsers, keyed by canonical op key.",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryBundle.litert_parsers",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "litert_parsers",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "litert_parsers: Registry[AirOpType | str, OpParserFn]",
              "source": {
                "line": 39,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L39"
              },
              "summary": ""
            },
            {
              "description": "AOT operator classes, keyed by canonical op key.",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryBundle.aot_operator_classes",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "aot_operator_classes",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "aot_operator_classes: Registry[AirOpType | str, type[AotOperator]]",
              "source": {
                "line": 40,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L40"
              },
              "summary": ""
            },
            {
              "description": "AIR transform classes, keyed by transform name.",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryBundle.transforms",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "transforms",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "transforms: Registry[str, type[AirTransform]]",
              "source": {
                "line": 41,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L41"
              },
              "summary": ""
            },
            {
              "description": "AIR operator option classes, keyed by canonical op key.",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryBundle.air_options",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "air_options",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "air_options: Registry[AirOpType | str, type[AirOperatorOptions]]",
              "source": {
                "line": 42,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L42"
              },
              "summary": ""
            }
          ],
          "name": "RegistryBundle",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "RegistryBundle(\n    litert_model_hooks: Registry[str, LiteRtModelHook],\n    litert_parsers: Registry[AirOpType | str, OpParserFn],\n    aot_operator_classes: Registry[AirOpType | str, type[AotOperator]],\n    transforms: Registry[str, type[AirTransform]],\n    air_options: Registry[AirOpType | str, type[AirOperatorOptions]],\n) -> None",
          "source": {
            "line": 26,
            "path": "helia_aot/registry/context.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L26"
          },
          "summary": "The five registries a conversion dispatches through."
        },
        {
          "description": "Mutable view over a ``RegistryBundle`` with a freeze latch.\n\nExposes each registry as an attribute and freezes or unfreezes them\ntogether, so a context handed to a conversion cannot be mutated once the\nbuilt-ins and any customizers have been registered.",
          "examples": [],
          "id": "helia_aot.registry.context.RegistryContext",
          "kind": "class",
          "language": "python",
          "members": [
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryContext.bundle",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "bundle",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "bundle = bundle",
              "source": {
                "line": 54,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L54"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryContext.litert_model_hooks",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "litert_model_hooks",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "litert_model_hooks = bundle.litert_model_hooks",
              "source": {
                "line": 55,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L55"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryContext.litert_parsers",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "litert_parsers",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "litert_parsers = bundle.litert_parsers",
              "source": {
                "line": 56,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L56"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryContext.aot_operator_classes",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "aot_operator_classes",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "aot_operator_classes = bundle.aot_operator_classes",
              "source": {
                "line": 57,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L57"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryContext.transforms",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "transforms",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "transforms = bundle.transforms",
              "source": {
                "line": 58,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L58"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryContext.air_options",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "air_options",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "air_options = bundle.air_options",
              "source": {
                "line": 59,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L59"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryContext.freeze",
              "kind": "method",
              "language": "python",
              "members": [],
              "name": "freeze",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "freeze() -> None",
              "source": {
                "line": 61,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L61"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.registry.context.RegistryContext.unfreeze",
              "kind": "method",
              "language": "python",
              "members": [],
              "name": "unfreeze",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "unfreeze() -> None",
              "source": {
                "line": 68,
                "path": "helia_aot/registry/context.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L68"
              },
              "summary": ""
            }
          ],
          "name": "RegistryContext",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "RegistryContext(bundle: RegistryBundle)",
          "source": {
            "line": 45,
            "path": "helia_aot/registry/context.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L45"
          },
          "summary": "Mutable view over a RegistryBundle with a freeze latch."
        },
        {
          "description": "Build an isolated set of built-ins, apply customizers, then optionally freeze.",
          "examples": [],
          "id": "helia_aot.registry.context.build_default_registry_context",
          "kind": "function",
          "language": "python",
          "members": [],
          "name": "build_default_registry_context",
          "params": [
            {
              "default": "None",
              "description": "Functions receiving the mutable context after built-ins are\nregistered. Use the same canonical key for a custom parser, AIR\noperation and AOT operator class.",
              "name": "customizers",
              "type": "list[Callable[[RegistryContext], None]] | None"
            },
            {
              "default": "False",
              "description": "Permit customizers to replace or remove built-in entries.\nThe default rejects either change while allowing new keys.",
              "name": "allow_override",
              "type": "bool"
            },
            {
              "default": "True",
              "description": "Freeze all registries after customization so conversion cannot\naccidentally mutate registration. Defaults to true.",
              "name": "freeze",
              "type": "bool"
            }
          ],
          "raises": [
            {
              "description": "A customizer replaces or removes a built-in while\n``allow_override`` is false. Exceptions from customizers propagate.",
              "type": "RuntimeError"
            }
          ],
          "returns": [
            {
              "description": "A fresh context; registrations are not shared with other conversions.",
              "type": "RegistryContext"
            }
          ],
          "signature": "build_default_registry_context(\n    *,\n    customizers: list[Callable[[RegistryContext], None]] | None = None,\n    allow_override: bool = False,\n    freeze: bool = True,\n) -> RegistryContext",
          "source": {
            "line": 112,
            "path": "helia_aot/registry/context.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/registry/context.py#L112"
          },
          "summary": "Build an isolated set of built-ins, apply customizers, then optionally freeze."
        }
      ]
    }
  ],
  "name": "helia_aot"
}
