From 2ac209c9a9226c9aec3ef2f762783d2f3dc61cc1 Mon Sep 17 00:00:00 2001 From: Glen De Cauwsemaecker Date: Wed, 16 Jul 2025 16:01:46 +0200 Subject: [PATCH] ensure to have explicit main functions in typestate pattern --- .../typestate-pattern.md | 14 ++++++++------ .../typestate-pattern/typestate-generics.md | 16 ++++++++-------- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/src/idiomatic/leveraging-the-type-system/typestate-pattern.md b/src/idiomatic/leveraging-the-type-system/typestate-pattern.md index 1753780f..e30f7dac 100644 --- a/src/idiomatic/leveraging-the-type-system/typestate-pattern.md +++ b/src/idiomatic/leveraging-the-type-system/typestate-pattern.md @@ -32,12 +32,14 @@ impl SerializeStruct { } } -let ser = Serializer::default() - .serialize_struct("User") - .serialize_field("id", "42") - .serialize_field("name", "Alice") - .finish_struct(); -println!("{}", ser.output); +fn main() { + let ser = Serializer::default() + .serialize_struct("User") + .serialize_field("id", "42") + .serialize_field("name", "Alice") + .finish_struct(); + println!("{}", ser.output); +} ```
diff --git a/src/idiomatic/leveraging-the-type-system/typestate-pattern/typestate-generics.md b/src/idiomatic/leveraging-the-type-system/typestate-pattern/typestate-generics.md index ecbd526a..b0e78c80 100644 --- a/src/idiomatic/leveraging-the-type-system/typestate-pattern/typestate-generics.md +++ b/src/idiomatic/leveraging-the-type-system/typestate-pattern/typestate-generics.md @@ -5,7 +5,6 @@ shared logic across state variants, while still encoding state transitions in the type system. ```rust -# fn main() -> std::io::Result<()> { #[non_exhaustive] struct Insecure; struct Secure { @@ -85,13 +84,14 @@ impl ConnectionBuilder> { } } -let _conn = Connection::new("db.local") - .secure() - .client_certificate(vec![1, 2, 3]) - .timeout(10) - .connect()?; -Ok(()) -# } +fn main() -> std::io::Result<()> { + let _conn = Connection::new("db.local") + .secure() + .client_certificate(vec![1, 2, 3]) + .timeout(10) + .connect()?; + Ok(()) +} ```