uplink 0.11.0

Idiomatic and safe Rust binding for the Storj Lib Uplink
Documentation
//! # Storj DCS Uplink for Rust
//!
//! This crate provides an idiomatic and safe Rust bindings for
//! [Storj DCS Uplink](https://pkg.go.dev/storj.io/uplink).
//!
//! It wraps the low level crate `uplink-sys`, auto-generated by
//! [bindgen](https://github.com/rust-lang/rust-bindgen). We use the term FFI through all this crate
//! documentation and error messages when referencing the low level crate.

#![deny(missing_docs)]
#![deny(clippy::undocumented_unsafe_blocks)]

pub mod access;
pub mod bucket;
pub(crate) mod config;
pub mod docs;
pub mod edge;
pub(crate) mod encryption_key;
pub mod error;
pub(crate) mod helpers;
pub mod metadata;
pub mod object;
pub mod project;
mod uplink_c;

pub use bucket::Bucket;
pub use config::Config;
pub use encryption_key::EncryptionKey;
pub use error::Error;
pub use object::Object;
pub use project::Project;

/// A specialized [`Result`](https://doc.rust-lang.org/std/result/enum.Result.html)
/// type for Storj Uplink operations.
///
/// This type is broadly used across this crate for any operations which may
/// produce an error.
///
/// This type is generally used to avoid writing out `storj_uplink_lib::Error`
/// directly and reduce repetition making the signature functions more concise.
pub type Result<T> = std::result::Result<T, error::Error>;