🦠 The Definitive Gemini Protocol Toolkit
gemini gemini-protocol gemtext parser zero-dependency toolkit ast converter html markdown cli networking
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat: derive all for public types

Fuwn 5d9579dd 1f6a37f7

+6 -6
+1 -1
Cargo.toml
··· 2 2 3 3 [package] 4 4 name = "germ" 5 - version = "0.4.3" 5 + version = "0.4.4" 6 6 authors = ["Fuwn <contact@fuwn.me>"] 7 7 edition = "2021" 8 8 description = "The Ultimate Gemini Toolkit."
+1 -1
src/ast/container.rs
··· 25 25 /// ```rust 26 26 /// let _ = germ::ast::Ast::from_string(r#"=> gemini://gem.rest/ GemRest"#); 27 27 /// ``` 28 - #[derive(Clone)] 28 + #[derive(Debug, Clone, PartialEq, Eq)] 29 29 pub struct Ast { 30 30 inner: Vec<Node>, 31 31 }
+1 -1
src/convert.rs
··· 26 26 #[cfg(feature = "macros")] mod macros; 27 27 28 28 /// Different targets to convert Gemtext to 29 - #[derive(Clone)] 29 + #[derive(Debug, Copy, Clone, PartialEq, Eq)] 30 30 pub enum Target { 31 31 /// Convert Gemtext to HTML 32 32 HTML,
+1 -1
src/meta.rs
··· 20 20 21 21 /// Structure-ize a Gemini response's meta section into it's mime type and it's 22 22 /// parameters. 23 - #[derive(Debug, Default, Clone)] 23 + #[derive(Debug, Default, Clone, PartialEq, Eq)] 24 24 pub struct Meta { 25 25 /// The mime type of a Gemini response 26 26 mime: String,
+1 -1
src/request/response.rs
··· 22 22 std::{borrow::Cow, fmt::Write}, 23 23 }; 24 24 25 - #[derive(Debug, Clone)] 25 + #[derive(Debug, Clone, PartialEq)] 26 26 pub struct Response { 27 27 status: Status, 28 28 meta: String,
+1 -1
src/request/status.rs
··· 28 28 /// assert_eq!(Status::from(10), Status::Input); 29 29 /// assert_eq!(i32::from(Status::Input), 10); 30 30 /// ``` 31 - #[derive(Debug, PartialEq, Clone, Eq)] 31 + #[derive(Debug, Copy, Clone, PartialEq, Eq)] 32 32 pub enum Status { 33 33 Input, 34 34 SensitiveInput,