irx.builder.lowering.classes

irx.builder.lowering.classes

Source: packages/irx/src/irx/builder/lowering/classes.py

title: Lower resolved class lifetimes without re-resolving ownership or names.

Classes

ClassVisitorMixin(FileVisitorMixin)

title: Checked creation, reference ownership, and concrete drops.

Methods

class_raw(self, value: ir.Value) -> ir.Value
title: Convert only the public payload pointer to the native ABI.
parameters:
  value:
    type: ir.Value
returns:
  type: ir.Value
class_field_function(self, class_: SemanticClass) -> ir.Function
title: Locate base-view fields through the concrete descriptor.
parameters:
  class_:
    type: SemanticClass
returns:
  type: ir.Function
class_field_value(self, node: astx.AST, value: ir.Value) -> ir.Value
title: Snapshot string fields before later expression effects.
parameters:
  node:
    type: astx.AST
  value:
    type: ir.Value
returns:
  type: ir.Value
class_operation(self, node: astx.AST, operation: str, value: ir.Value) -> None
title: Emit a checked operation on a semantically resolved reference.
parameters:
  node:
    type: astx.AST
  operation:
    type: str
  value:
    type: ir.Value
class_cleanup(self, node: astx.AST, value: ir.Value, owner: str | None=None, *, storage: bool=False) -> None
title: Release one reference or the current generation of a binding.
parameters:
  node:
    type: astx.AST
  value:
    type: ir.Value
  owner:
    type: str | None
  storage:
    type: bool
class_pin(self, node: astx.AST, value: ir.Value) -> None
title: Pin an evaluated class through the full expression.
parameters:
  node:
    type: astx.AST
  value:
    type: ir.Value
class_acquire(self, node: astx.AST, value: ir.Value) -> ir.Value
title: Implement the analyzed retain-versus-move decision of a store.
parameters:
  node:
    type: astx.AST
  value:
    type: ir.Value
returns:
  type: ir.Value
class_drop_function(self, class_: SemanticClass) -> ir.Function
title: Generate a concrete drop callback from resolved phases.
parameters:
  class_:
    type: SemanticClass
returns:
  type: ir.Function
lower_class_construct(self, node: astx.AST, resolution: ResolvedClassConstruction) -> None
title: Construct an owner with ordered arguments and phase progress.
parameters:
  node:
    type: astx.AST
  resolution:
    type: ResolvedClassConstruction
Back to top