aix.main

aix.main

Source: packages/aix/src/aix/main.py

title: AIX main compiler frontend orchestration.

Functions

get_module_name_from_file_path(filepath: str) -> str

title: Return module name from one AIX source path.
parameters:
  filepath:
    type: str
returns:
  type: str

Classes

AixMain

title: Main AIX frontend facade used by the CLI.
attributes:
  input_files:
    type: list[str]
  output_file:
    type: str
  is_lib:
    type: bool
  link_mode:
    type: Literal[auto, pie, no-pie]

Methods

run(self, **kwargs: Any) -> None
title: Run one AIX compiler/frontend action.
parameters:
  kwargs:
    type: Any
    variadic: keyword
run_tests(self, **kwargs: Any) -> int
title: Discover and parse AIX test source files.
parameters:
  kwargs:
    type: Any
    variadic: keyword
returns:
  type: int
show_ast(self) -> None
title: Print AST for configured input files.
show_tokens(self) -> None
title: Print token stream for configured input files.
show_llvm_ir(self) -> None
title: Translate configured input to LLVM IR when backend supports it.
run_shell(self) -> None
title: Open shell mode.
run_binary(self) -> None
title: Run generated binary.
compile(self, show_llvm_ir: bool=False) -> bool
title: Compile configured input with the existing IRx backend.
parameters:
  show_llvm_ir:
    type: bool
returns:
  type: bool