From 8917d1f81c82d1515e54b7075b9ce9d18b8d5ad6 Mon Sep 17 00:00:00 2001 From: melfey Date: Fri, 22 May 2026 22:15:10 -0500 Subject: [PATCH] The starting points have been created. Sweet! --- Cargo.toml | 12 ++++++++++++ src/core/communication/impls.rs | 0 src/core/communication/mod.rs | 3 +++ src/core/communication/structs.rs | 0 src/core/communication/traits.rs | 0 src/core/logic/impls.rs | 0 src/core/logic/kinematics.rs | 0 src/core/logic/mod.rs | 4 ++++ src/core/logic/structs.rs | 0 src/core/logic/traits.rs | 0 src/core/mod.rs | 2 ++ src/embassy/mod.rs | 8 ++++++++ src/host/mod.rs | 0 src/lib.rs | 10 ++++++++++ 14 files changed, 39 insertions(+) create mode 100644 src/core/communication/impls.rs create mode 100644 src/core/communication/mod.rs create mode 100644 src/core/communication/structs.rs create mode 100644 src/core/communication/traits.rs create mode 100644 src/core/logic/impls.rs create mode 100644 src/core/logic/kinematics.rs create mode 100644 src/core/logic/mod.rs create mode 100644 src/core/logic/structs.rs create mode 100644 src/core/logic/traits.rs create mode 100644 src/core/mod.rs create mode 100644 src/embassy/mod.rs create mode 100644 src/host/mod.rs diff --git a/Cargo.toml b/Cargo.toml index 8c58fe1..27556b3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,4 +3,16 @@ name = "rnavp" version = "0.1.0" edition = "2024" + +[features] +default= ["host"] +std = [] +embassy = ["core_full"] +core = [] +core_full = ["core_communication", "core_logic"] +core_communication = ["core"] +core_logic = ["core"] +host = ["std", "core_full"] + + [dependencies] diff --git a/src/core/communication/impls.rs b/src/core/communication/impls.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/core/communication/mod.rs b/src/core/communication/mod.rs new file mode 100644 index 0000000..8ee67db --- /dev/null +++ b/src/core/communication/mod.rs @@ -0,0 +1,3 @@ +pub mod impls; +pub mod structs; +pub mod traits; \ No newline at end of file diff --git a/src/core/communication/structs.rs b/src/core/communication/structs.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/core/communication/traits.rs b/src/core/communication/traits.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/core/logic/impls.rs b/src/core/logic/impls.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/core/logic/kinematics.rs b/src/core/logic/kinematics.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/core/logic/mod.rs b/src/core/logic/mod.rs new file mode 100644 index 0000000..8fc576d --- /dev/null +++ b/src/core/logic/mod.rs @@ -0,0 +1,4 @@ +pub mod structs; +pub mod kinematics; +pub mod impls; +pub mod traits; \ No newline at end of file diff --git a/src/core/logic/structs.rs b/src/core/logic/structs.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/core/logic/traits.rs b/src/core/logic/traits.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/core/mod.rs b/src/core/mod.rs new file mode 100644 index 0000000..e0748aa --- /dev/null +++ b/src/core/mod.rs @@ -0,0 +1,2 @@ +pub mod communication; +pub mod logic; \ No newline at end of file diff --git a/src/embassy/mod.rs b/src/embassy/mod.rs new file mode 100644 index 0000000..b7aeffb --- /dev/null +++ b/src/embassy/mod.rs @@ -0,0 +1,8 @@ +#[cfg(feature = "std")] +compile_error!( + "The 'std' feature is enabled, which is incompatible with 'embassy'. \n\ + The 'host' feature (enabled by default) turns on 'std'. \n\ + Please use '--no-default-features --features embassy' to build for MCU\n\ + or verify that you have not included a different feature that requires'std'" +); + diff --git a/src/host/mod.rs b/src/host/mod.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/lib.rs b/src/lib.rs index e69de29..07e02e3 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -0,0 +1,10 @@ + +#![cfg_attr(not(feature = "std"), no_std)] + +#[cfg(feature = "std")] +extern crate std; + + +mod core; +mod embassy; +mod host;