Skip to main content

phase_test_bodies

Function phase_test_bodies 

Source
pub fn phase_test_bodies(
    test_groups: &BTreeMap<String, Vec<usize>>,
    parsed: &[ParsedFile],
    kinds: &BTreeMap<String, UnitKind>,
    unit_tables: &HashMap<String, UnitTable>,
    exports_visibility: &HashMap<String, HashMap<String, Visibility>>,
    unit_consumes: &HashMap<String, Vec<String>>,
    unit_consumes_aliases: &HashMap<String, HashMap<String, String>>,
    unit_uses: &HashMap<String, Vec<String>>,
    errors: &mut Vec<CompileError>,
    refs: &mut RefSink,
    tys: &Arc<Types>,
) -> HashMap<String, HashMap<String, ResolvedStub>>
Expand description

P5.4 (design/tracks/semantics-in-the-checker.md §6): the checking half of test <target> suite processing — target resolution, duplicate-case- name detection, stub-clause resolution, and case/property body type-checking. Formerly Phases 2-4 of bynk-emit’s own process_tests; Phase 5 (TypeScript emission) stays in bynk-emit::project::tests_emit::process_tests, which calls this function for its checking half and then emits only for the targets this returns — every target this function resolves, has no duplicate case names, and whose bodies type-check clean is exactly “ready for emission”. bynk_check::analysis::analyse_project calls this too and discards the returned map — it never emits, so only the diagnostic/ RefSink side effects matter there. Closes category 7 of bynk-check/src/analysis.rs’s own residual-gap accounting, alongside phase_integration_bodies.