qubit-fs 0.2.1

Provider-neutral synchronous and asynchronous filesystem abstraction for Rust
Documentation
// =============================================================================
//    Copyright (c) 2026 Haixing Hu.
//
//    SPDX-License-Identifier: Apache-2.0
//
//    Licensed under the Apache License, Version 2.0.
// =============================================================================
//! Copy conflict policy.

/// Conflict policy for existing destination entries.
///
/// # Examples
///
/// ```rust
/// use qubit_fs::copy::CopyConflictPolicy;
///
/// assert_eq!(CopyConflictPolicy::Fail, CopyConflictPolicy::default());
/// ```
#[derive(Clone, Copy, Debug, Eq, PartialEq)]
pub enum CopyConflictPolicy {
    /// Fail when a destination entry exists.
    Fail,
    /// Overwrite existing destination entries.
    Overwrite,
    /// Skip existing destination entries.
    Skip,
}

impl Default for CopyConflictPolicy {
    /// Fails on destination conflicts by default.
    #[inline]
    fn default() -> Self {
        Self::Fail
    }
}