/*******************************************************************************
*
* Copyright (c) 2026 Haixing Hu.
*
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0.
*
******************************************************************************/
//! Read operation options.
use crate::ChecksumPolicy;
/// Options controlling a read operation.
#[derive(Clone, Debug, Default, Eq, PartialEq)]
pub struct ReadOptions {
/// Optional byte offset.
pub offset: Option<u64>,
/// Optional byte length.
pub length: Option<u64>,
/// Optional required ETag or provider version.
pub if_match: Option<String>,
/// Optional ETag or provider version that must not match.
pub if_none_match: Option<String>,
/// Checksum validation policy.
pub checksum: ChecksumPolicy,
}