Rewind over the currently-buffered ephemeral label (if any) so the next write lands in column 0 of the topmost affected row.
(&mut self)
| 2855 | fn check_one_const<M: KernelMode, F>( |
| 2856 | i: usize, |
| 2857 | progress_index: usize, |
| 2858 | progress_total: usize, |
| 2859 | ixon_env: &IxonEnv, |
| 2860 | lookups: &IxonIngressLookups, |
| 2861 | names: &[Name], |
| 2862 | expect_pass: &[bool], |
| 2863 | ungrounded: &FxHashMap<Name, String>, |
| 2864 | kenv: &mut KEnv<M>, |
| 2865 | mut before_kernel_check: F, |
| 2866 | ) -> CheckOutcome |
| 2867 | where |
| 2868 | F: FnMut(&str), |
| 2869 | M::MField<Vec<Name>>: CheckDupLevelParams, |
| 2870 | { |
| 2871 | let name = &names[i]; |
| 2872 | let should_pass = expect_pass.get(i).copied().unwrap_or(true); |
| 2873 | // In anon mode, surface the content address in the per-constant log |
| 2874 | // line — the kernel itself doesn't see names. We still accept names |
| 2875 | // as input (and resolve them via `ixon_env.named` at the FFI |
| 2876 | // scheduling layer), so the user's identifier is preserved in the |