class Savi::Compiler::Infer::PassEdge
- Savi::Compiler::Infer::PassEdge
- Savi::Compiler::Pass::Analyze(Savi::Compiler::Infer::TypeAliasAnalysis, Savi::Compiler::Infer::TypeAnalysis, Savi::Compiler::Infer::FuncAnalysis)
- Reference
- Object
Overview
The "edge" version of the pass only resolves the minimal amount of nodes needed to understand the type signature of each function in the program.
Defined in:
savi/compiler/infer.crConstructors
Instance Method Summary
- #analyze_func(ctx, f, f_link, t_analysis) : FuncAnalysis
- #analyze_type(ctx, t, t_link) : TypeAnalysis
- #analyze_type_alias(ctx, t, t_link) : TypeAliasAnalysis
- #gather_deps_for_func(ctx, f, f_link)
Instance methods inherited from class Savi::Compiler::Pass::Analyze(Savi::Compiler::Infer::TypeAliasAnalysis, Savi::Compiler::Infer::TypeAnalysis, Savi::Compiler::Infer::FuncAnalysis)
[](t_link : Program::TypeAlias::Link)[](t_link : Program::Type::Link)
[](f_link : Program::Function::Link) [], []?(t_link : Program::TypeAlias::Link)
[]?(t_link : Program::Type::Link)
[]?(f_link : Program::Function::Link) []?, analyze_func(ctx : Context, f : Program::Function, f_link : Program::Function::Link, t_analysis : TypeAnalysis) : FuncAnalysis analyze_func, analyze_type(ctx : Context, t : Program::Type, t_link : Program::Type::Link) : TypeAnalysis analyze_type, analyze_type_alias(ctx : Context, t : Program::Type, t_link : Program::Type::Link) : TypeAliasAnalysis analyze_type_alias, cache_info_for_alias cache_info_for_alias, cache_info_for_func cache_info_for_func, cache_info_for_type cache_info_for_type, prevent_reentrance(set, link, &) prevent_reentrance, run(ctx : Context, package : Program::Package) run, run_for_func(ctx : Context, f : Program::Function, f_link : Program::Function::Link, optional_t_analysis : TypeAnalysis | Nil = nil) : FuncAnalysis run_for_func, run_for_type(ctx : Context, t : Program::Type, t_link : Program::Type::Link) : TypeAnalysis run_for_type, run_for_type_alias(ctx : Context, t : Program::TypeAlias, t_link : Program::TypeAlias::Link) : TypeAliasAnalysis run_for_type_alias