From 823ec0ad0045bd5f3f1de998e40ae057c80c9ac0 Mon Sep 17 00:00:00 2001 From: Stephan Rehfeld Date: Wed, 8 Apr 2026 19:03:40 +0200 Subject: [PATCH] Move is the default in Rust --- src/main.rs | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/src/main.rs b/src/main.rs index 9019423..79b942c 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,14 +1,23 @@ -fn add_10(value: Option) -> Result { - match value { - Some(v) => Ok(v + 10), - None => Err(String::from("value was empty")), +struct Vector3 { + x: f32, + y: f32, + z: f32, +} + +impl Vector3 { + pub fn new(x: f32, y: f32, z: f32) -> Vector3 { + Vector3 { x, y, z } } } -fn main() { - let value = add_10(None); - - println!("Result is: {}", value.unwrap_or(42)); - - panic!("Non recoverable error."); +fn print(vec: Vector3) { + println!("Vector3( x = {}, y = {}, z = {})", vec.x, vec.y, vec.z); +} + +fn main() { + let mut vec = Vector3::new(1.0, 0.0, 0.0); + + print(vec); + + vec.y = 2.0; }