Skip to content

File-sink-default-policy

Read the initial default file policy captured by a FileSink. This helper exposes the baseline file policy recorded when the sink was created.

Interface

moonbit
pub fn FileSink::default_policy(self : FileSink) -> FileSinkPolicy {

input

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

output

  • FileSinkPolicy - Initial default file policy.

Explanation

Detailed rules explaining key parameters and behaviors

  • The returned policy is built from the sink's stored default append, auto-flush, and rotation values.
  • This helper is useful when callers need to compare runtime drift or restore defaults later.
  • It is observation-only and does not mutate sink state.

How to Use

Here are some specific examples provided.

When Need Baseline Policy Visibility

When diagnostics should show the original file policy separately from the live one:

moonbit
let defaults = sink.default_policy()

In this example, the direct file sink exposes its original file policy snapshot.

When Prepare For Policy Reset Logic

When tooling should capture or compare default settings explicitly:

moonbit
let original = sink.default_policy()

In this example, callers can reason about factory policy separately from runtime changes.

Error Case

e.g.:

  • If callers only need to know whether runtime drift exists, policy_matches_default() is the simpler API.

  • This helper does not say whether the current sink handle is available.

Notes

  1. Use this helper when the original file policy matters operationally.

  2. It complements policy() and reset_policy().

Published from the repository docs folder with VitePress.