summaryrefslogtreecommitdiff
path: root/blog
diff options
context:
space:
mode:
Diffstat (limited to 'blog')
-rw-r--r--blog/Cargo.lock4
-rw-r--r--blog/Cargo.toml7
-rw-r--r--blog/src/lib.rs127
-rw-r--r--blog/src/main.rs36
4 files changed, 0 insertions, 174 deletions
diff --git a/blog/Cargo.lock b/blog/Cargo.lock
deleted file mode 100644
index 8e79386..0000000
--- a/blog/Cargo.lock
+++ /dev/null
@@ -1,4 +0,0 @@
-[[package]]
-name = "blog"
-version = "0.1.0"
-
diff --git a/blog/Cargo.toml b/blog/Cargo.toml
deleted file mode 100644
index 0f971d3..0000000
--- a/blog/Cargo.toml
+++ /dev/null
@@ -1,7 +0,0 @@
-[package]
-name = "blog"
-version = "0.1.0"
-authors = ["Adam Carpenter <53hornet@gmail.com>"]
-edition = "2018"
-
-[dependencies]
diff --git a/blog/src/lib.rs b/blog/src/lib.rs
deleted file mode 100644
index 8436a36..0000000
--- a/blog/src/lib.rs
+++ /dev/null
@@ -1,127 +0,0 @@
-//pub struct Post {
-// state: Option<Box<dyn State>>,
-// content: String,
-//}
-//
-//impl Post {
-// pub fn new() -> Post {
-// Post {
-// state: Some(Box::new(Draft {})),
-// content: String::new(),
-// }
-// }
-//
-// pub fn add_text(&mut self, text: &str) {
-// self.content.push_str(text);
-// }
-//
-// pub fn content(&self) -> &str {
-// self.state.as_ref().unwrap().content(&self)
-// }
-//
-// pub fn request_review(&mut self) {
-// if let Some(s) = self.state.take() {
-// self.state = Some(s.request_review())
-// }
-// }
-//
-// pub fn approve(&mut self) {
-// if let Some(s) = self.state.take() {
-// self.state = Some(s.approve())
-// }
-// }
-//}
-//
-//trait State {
-// fn request_review(self: Box<Self>) -> Box<dyn State>;
-// fn approve(self: Box<Self>) -> Box<dyn State>;
-// fn content<'a>(&self, post: &'a Post) -> &'a str {
-// ""
-// }
-//}
-//
-//struct Draft {}
-//
-//impl State for Draft {
-// fn request_review(self: Box<Self>) -> Box<dyn State> {
-// Box::new(PendingReview {})
-// }
-//
-// fn approve(self: Box<Self>) -> Box<dyn State> {
-// self
-// }
-//}
-//
-//struct PendingReview {}
-//
-//impl State for PendingReview {
-// fn request_review(self: Box<Self>) -> Box<dyn State> {
-// self
-// }
-//
-// fn approve(self: Box<Self>) -> Box<dyn State> {
-// Box::new(Published {})
-// }
-//}
-//
-//struct Published {}
-//
-//impl State for Published {
-// fn request_review(self: Box<Self>) -> Box<dyn State> {
-// self
-// }
-//
-// fn approve(self: Box<Self>) -> Box<dyn State> {
-// self
-// }
-//
-// fn content<'a>(&self, post: &'a Post) -> &'a str {
-// &post.content
-// }
-//}
-
-
-
-pub struct Post {
- content: String,
-}
-
-pub struct DraftPost {
- content: String,
-}
-
-pub struct PendingReviewPost {
- content: String,
-}
-
-impl Post {
- pub fn new() -> DraftPost {
- DraftPost {
- content: String::new(),
- }
- }
-
- pub fn content(&self) -> &str {
- &self.content
- }
-}
-
-impl DraftPost {
- pub fn add_text(&mut self, text: &str) {
- self.content.push_str(text);
- }
-
- pub fn request_review(self) -> PendingReviewPost {
- PendingReviewPost {
- content: self.content,
- }
- }
-}
-
-impl PendingReviewPost {
- pub fn approve(self) -> Post {
- Post {
- content: self.content,
- }
- }
-}
diff --git a/blog/src/main.rs b/blog/src/main.rs
deleted file mode 100644
index c976cd9..0000000
--- a/blog/src/main.rs
+++ /dev/null
@@ -1,36 +0,0 @@
-use blog::Post;
-
-fn main() {
-// let mut post = Post::new();
-//
-// post.add_text("salad");
-// assert_eq!("", post.content());
-//
-// post.request_review();
-// assert_eq!("", post.content());
-//
-// post.approve();
-// assert_eq!("salad", post.content());
-
-
-
-// let mut post = Post::new();
-// post.add_text("salad");
-// assert_eq!("", post.content());
-
-
-
- let mut post = Post::new();
-
- post.add_text("salad");
- let post = post.request_review();
- let post = post.approve();
-
- assert_eq!("salad", post.content());
-
-
-
-
-
- println!("Done.");
-}