From 18f60ba07893c79100c8c576a717059f3da33c84 Mon Sep 17 00:00:00 2001 From: HampusM Date: Thu, 21 Jul 2022 19:50:42 +0200 Subject: docs: rename example folder to examples --- example/Cargo.toml | 11 --------- example/src/animals/cat.rs | 22 ------------------ example/src/animals/cow.rs | 24 -------------------- example/src/animals/dog.rs | 22 ------------------ example/src/animals/human.rs | 49 ----------------------------------------- example/src/animals/mod.rs | 4 ---- example/src/bootstrap.rs | 29 ------------------------ example/src/interfaces/cat.rs | 4 ---- example/src/interfaces/cow.rs | 10 --------- example/src/interfaces/dog.rs | 4 ---- example/src/interfaces/human.rs | 4 ---- example/src/interfaces/mod.rs | 4 ---- example/src/main.rs | 30 ------------------------- 13 files changed, 217 deletions(-) delete mode 100644 example/Cargo.toml delete mode 100644 example/src/animals/cat.rs delete mode 100644 example/src/animals/cow.rs delete mode 100644 example/src/animals/dog.rs delete mode 100644 example/src/animals/human.rs delete mode 100644 example/src/animals/mod.rs delete mode 100644 example/src/bootstrap.rs delete mode 100644 example/src/interfaces/cat.rs delete mode 100644 example/src/interfaces/cow.rs delete mode 100644 example/src/interfaces/dog.rs delete mode 100644 example/src/interfaces/human.rs delete mode 100644 example/src/interfaces/mod.rs delete mode 100644 example/src/main.rs (limited to 'example') diff --git a/example/Cargo.toml b/example/Cargo.toml deleted file mode 100644 index 003ad19..0000000 --- a/example/Cargo.toml +++ /dev/null @@ -1,11 +0,0 @@ -[package] -name = "example" -version = "0.1.0" -license = "LGPL-2.1" -authors = ["HampusM "] -edition = "2021" - -[dependencies] -syrette = "0.1.0" -error-stack = "0.1.1" - diff --git a/example/src/animals/cat.rs b/example/src/animals/cat.rs deleted file mode 100644 index 153ad4b..0000000 --- a/example/src/animals/cat.rs +++ /dev/null @@ -1,22 +0,0 @@ -use syrette::injectable; - -use crate::interfaces::cat::ICat; - -pub struct Cat {} - -#[injectable(ICat)] -impl Cat -{ - pub fn new() -> Self - { - Self {} - } -} - -impl ICat for Cat -{ - fn meow(&self) - { - println!("Meow!"); - } -} diff --git a/example/src/animals/cow.rs b/example/src/animals/cow.rs deleted file mode 100644 index a75d750..0000000 --- a/example/src/animals/cow.rs +++ /dev/null @@ -1,24 +0,0 @@ -use crate::interfaces::cow::ICow; - -pub struct Cow -{ - moo_cnt: i32, -} - -impl Cow -{ - pub fn new(moo_cnt: i32) -> Self - { - Self { moo_cnt } - } -} - -impl ICow for Cow -{ - fn moo(&self) - { - for _ in 0..self.moo_cnt { - println!("Moo"); - } - } -} diff --git a/example/src/animals/dog.rs b/example/src/animals/dog.rs deleted file mode 100644 index 84959c0..0000000 --- a/example/src/animals/dog.rs +++ /dev/null @@ -1,22 +0,0 @@ -use syrette::injectable; - -use crate::interfaces::dog::IDog; - -pub struct Dog {} - -#[injectable(IDog)] -impl Dog -{ - pub fn new() -> Self - { - Self {} - } -} - -impl IDog for Dog -{ - fn woof(&self) - { - println!("Woof!"); - } -} diff --git a/example/src/animals/human.rs b/example/src/animals/human.rs deleted file mode 100644 index 5bd2f8f..0000000 --- a/example/src/animals/human.rs +++ /dev/null @@ -1,49 +0,0 @@ -use syrette::injectable; -use syrette::ptr::{FactoryPtr, InterfacePtr}; - -use crate::interfaces::cat::ICat; -use crate::interfaces::cow::{CowFactory, ICow}; -use crate::interfaces::dog::IDog; -use crate::interfaces::human::IHuman; - -pub struct Human -{ - dog: InterfacePtr, - cat: InterfacePtr, - cow_factory: FactoryPtr, -} - -#[injectable(IHuman)] -impl Human -{ - pub fn new( - dog: InterfacePtr, - cat: InterfacePtr, - cow_factory: FactoryPtr, - ) -> Self - { - Self { - dog, - cat, - cow_factory, - } - } -} - -impl IHuman for Human -{ - fn make_pets_make_sounds(&self) - { - println!("Hi doggy!"); - - self.dog.woof(); - - println!("Hi kitty!"); - - self.cat.meow(); - - let cow: Box = (self.cow_factory)(3); - - cow.moo(); - } -} diff --git a/example/src/animals/mod.rs b/example/src/animals/mod.rs deleted file mode 100644 index 6511d17..0000000 --- a/example/src/animals/mod.rs +++ /dev/null @@ -1,4 +0,0 @@ -pub mod cat; -pub mod cow; -pub mod dog; -pub mod human; diff --git a/example/src/bootstrap.rs b/example/src/bootstrap.rs deleted file mode 100644 index a1a7b05..0000000 --- a/example/src/bootstrap.rs +++ /dev/null @@ -1,29 +0,0 @@ -use syrette::DIContainer; - -// Concrete implementations -use crate::animals::cat::Cat; -use crate::animals::cow::Cow; -use crate::animals::dog::Dog; -use crate::animals::human::Human; -// -// Interfaces -use crate::interfaces::cat::ICat; -use crate::interfaces::cow::{CowFactory, ICow}; -use crate::interfaces::dog::IDog; -use crate::interfaces::human::IHuman; - -pub fn bootstrap() -> DIContainer -{ - let mut di_container: DIContainer = DIContainer::new(); - - di_container.bind::().to::(); - di_container.bind::().to::(); - di_container.bind::().to::(); - - di_container.bind::().to_factory(&|moo_cnt| { - let cow: Box = Box::new(Cow::new(moo_cnt)); - cow - }); - - di_container -} diff --git a/example/src/interfaces/cat.rs b/example/src/interfaces/cat.rs deleted file mode 100644 index 8650802..0000000 --- a/example/src/interfaces/cat.rs +++ /dev/null @@ -1,4 +0,0 @@ -pub trait ICat -{ - fn meow(&self); -} diff --git a/example/src/interfaces/cow.rs b/example/src/interfaces/cow.rs deleted file mode 100644 index 59ce7b1..0000000 --- a/example/src/interfaces/cow.rs +++ /dev/null @@ -1,10 +0,0 @@ -use syrette::factory; -use syrette::interfaces::factory::IFactory; - -pub trait ICow -{ - fn moo(&self); -} - -#[factory] -pub type CowFactory = dyn IFactory<(i32,), dyn ICow>; diff --git a/example/src/interfaces/dog.rs b/example/src/interfaces/dog.rs deleted file mode 100644 index 4211c27..0000000 --- a/example/src/interfaces/dog.rs +++ /dev/null @@ -1,4 +0,0 @@ -pub trait IDog -{ - fn woof(&self); -} diff --git a/example/src/interfaces/human.rs b/example/src/interfaces/human.rs deleted file mode 100644 index dc20194..0000000 --- a/example/src/interfaces/human.rs +++ /dev/null @@ -1,4 +0,0 @@ -pub trait IHuman -{ - fn make_pets_make_sounds(&self); -} diff --git a/example/src/interfaces/mod.rs b/example/src/interfaces/mod.rs deleted file mode 100644 index 6511d17..0000000 --- a/example/src/interfaces/mod.rs +++ /dev/null @@ -1,4 +0,0 @@ -pub mod cat; -pub mod cow; -pub mod dog; -pub mod human; diff --git a/example/src/main.rs b/example/src/main.rs deleted file mode 100644 index 956b79e..0000000 --- a/example/src/main.rs +++ /dev/null @@ -1,30 +0,0 @@ -#![deny(clippy::all)] -#![deny(clippy::pedantic)] -#![allow(clippy::module_name_repetitions)] - -use syrette::errors::di_container::DIContainerError; - -mod animals; -mod bootstrap; -mod interfaces; - -use bootstrap::bootstrap; -use interfaces::dog::IDog; -use interfaces::human::IHuman; - -fn main() -> error_stack::Result<(), DIContainerError> -{ - println!("Hello, world!"); - - let di_container = bootstrap(); - - let dog = di_container.get::()?; - - dog.woof(); - - let human = di_container.get::()?; - - human.make_pets_make_sounds(); - - Ok(()) -} -- cgit v1.2.3-18-g5258