Initial IronStorage project structure
This commit is contained in:
15
crates/apple/Cargo.toml
Normal file
15
crates/apple/Cargo.toml
Normal file
@@ -0,0 +1,15 @@
|
||||
[package]
|
||||
name = "ironstorage-apple"
|
||||
description = "UniFFI boundary between IronStorage and its Apple frontends"
|
||||
version.workspace = true
|
||||
edition.workspace = true
|
||||
rust-version.workspace = true
|
||||
publish = false
|
||||
|
||||
[lib]
|
||||
name = "ironstorage_apple"
|
||||
crate-type = ["lib", "staticlib", "cdylib"]
|
||||
|
||||
[dependencies]
|
||||
ironstorage.workspace = true
|
||||
uniffi.workspace = true
|
||||
19
crates/apple/src/lib.rs
Normal file
19
crates/apple/src/lib.rs
Normal file
@@ -0,0 +1,19 @@
|
||||
#![forbid(unsafe_code)]
|
||||
#![deny(clippy::disallowed_types)]
|
||||
|
||||
//! Mechanical UniFFI exports for Apple presentation code.
|
||||
|
||||
uniffi::setup_scaffolding!();
|
||||
|
||||
#[uniffi::export]
|
||||
pub fn product_name() -> String {
|
||||
ironstorage::PRODUCT_NAME.to_owned()
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
#[test]
|
||||
fn bridge_reads_product_name_from_storage_crate() {
|
||||
assert_eq!(super::product_name(), ironstorage::PRODUCT_NAME);
|
||||
}
|
||||
}
|
||||
7
crates/storage/Cargo.toml
Normal file
7
crates/storage/Cargo.toml
Normal file
@@ -0,0 +1,7 @@
|
||||
[package]
|
||||
name = "ironstorage"
|
||||
description = "Pure Rust password-store repository management"
|
||||
version.workspace = true
|
||||
edition.workspace = true
|
||||
rust-version.workspace = true
|
||||
publish = false
|
||||
9
crates/storage/src/lib.rs
Normal file
9
crates/storage/src/lib.rs
Normal file
@@ -0,0 +1,9 @@
|
||||
#![forbid(unsafe_code)]
|
||||
#![deny(clippy::disallowed_types)]
|
||||
|
||||
//! Password-store repository behavior shared by every IronStorage frontend.
|
||||
//!
|
||||
//! This crate is the sole owner of stored and derived password-store objects.
|
||||
|
||||
/// Product name shared by the presentation adapters.
|
||||
pub const PRODUCT_NAME: &str = "IronStorage";
|
||||
Reference in New Issue
Block a user