Skip to content

File-sink-reset-policy

Reset the runtime file policy of a FileSink back to its original defaults. This helper restores append, auto-flush, and rotation policy together on the direct sink.

Interface

moonbit
pub fn FileSink::reset_policy(self : FileSink) -> Unit {

input

  • self : FileSink - File sink whose file policy should be restored.

Explanation

Detailed rules explaining key parameters and behaviors

  • This helper restores the sink's stored default append, auto-flush, and rotation settings.
  • It is the inverse of runtime policy drift, not a generic reopen or flush action.
  • It changes policy only and does not reopen the sink automatically.

How to Use

Here are some specific examples provided.

When Need To Undo Runtime Policy Changes

When direct file policy should return to the original configured defaults:

moonbit
sink.reset_policy()

In this example, append, auto-flush, and rotation settings are restored together.

When Use Drift-aware Recovery

When reset should only happen after runtime changes:

moonbit
if !sink.policy_matches_default() {
  sink.reset_policy()
}

In this example, reset is only applied when runtime policy has diverged.

Error Case

e.g.:

  • If callers need to restore only one setting, a narrower setter may be more appropriate than a full policy reset.

  • This helper does not reopen the file or prove current availability.

Notes

  1. Use this helper when the original bundled file policy should be restored intact.

  2. It pairs naturally with policy_matches_default() and default_policy().

Published from the repository docs folder with VitePress.