|
ESBMC
Efficient SMT-based Context-Bounded Model Checker
|
Classes | |
| class | ImportResolverLike |
| class | ThreadingLoweringLike |
| class | CliDeps |
| class | _ResolverCallbacksDeps |
Functions | |
| ast.Module | _read_ast_from_file (str filename) |
| None | check_usage () |
| None | check_dependencies () |
| None | select_threading_model (str output_dir, bool deadlock_check) |
| None | _emit_model_jsons (str output_dir, *, ImportResolverLike import_resolver, GenerateAstJsonFn generate_ast_json_fn) |
| int|None | main (*, CliDeps deps) |
Variables | |
| TypeAlias | RunMypyStrictFn = Callable[[str], tuple[int, str]] |
| TypeAlias | ParseFileCanonicalisedFn = Callable[[str], tuple[ast.AST, object]] |
| TypeAlias | GenerateAstJsonFn = Callable[[ast.AST, str, object, str], None] |
| TypeAlias | AnnotateConstantFn = Callable[[ast.AST], None] |
| TypeAlias | AddTypeAnnotationFn = Callable[[ast.Assign], None] |
| TypeAlias | SnapshotExportsFn = Callable[[object], tuple[set[str], dict[str, str], set[str] | None]] |
| TypeAlias | ComputeRangeSeedFn = Callable[[ast.Module, object], tuple[set[str], dict[str, str]]] |
| TypeAlias | PropagateRangeAliasesFn = Callable[[dict, object], None] |
| TypeAlias | RewriteReFn = Callable[[ast.Module], None] |
| tuple | _FLAGS = ("--deadlock-check", "--typecheck") |
CLI orchestration for the Python parser frontend.
|
protected |
Generate AST JSON for each memory-model module in ``output_dir/models``.
|
protected |
Read and parse a Python source file into an AST module.
| None parser.parser_cli.check_dependencies | ( | ) |
Warn when optional tools for richer diagnostics are missing.
| None parser.parser_cli.check_usage | ( | ) |
Validate CLI args and fail with usage message when invalid.
Run parser CLI orchestration with explicit dependency injection.
| None parser.parser_cli.select_threading_model | ( | str | output_dir, |
| bool | deadlock_check ) |
Activate deadlock threading model variant when requested.
|
protected |
| TypeAlias parser.parser_cli.AddTypeAnnotationFn = Callable[[ast.Assign], None] |
| TypeAlias parser.parser_cli.AnnotateConstantFn = Callable[[ast.AST], None] |
| TypeAlias parser.parser_cli.ComputeRangeSeedFn = Callable[[ast.Module, object], tuple[set[str], dict[str, str]]] |
| TypeAlias parser.parser_cli.GenerateAstJsonFn = Callable[[ast.AST, str, object, str], None] |
| TypeAlias parser.parser_cli.ParseFileCanonicalisedFn = Callable[[str], tuple[ast.AST, object]] |
| TypeAlias parser.parser_cli.PropagateRangeAliasesFn = Callable[[dict, object], None] |
| TypeAlias parser.parser_cli.RewriteReFn = Callable[[ast.Module], None] |
| TypeAlias parser.parser_cli.SnapshotExportsFn = Callable[[object], tuple[set[str], dict[str, str], set[str] | None]] |