magnus というcrate を利用すると、超簡単に Ruby の拡張ライブラリが実装できます。 具体的には、Rust 側の記述はこんな感じになります。 use magnus::{define_class, function, method, prelude::*, Error}; #[magnus::wrap(class = "Point")] struct Point { x: isize, y: isize, } impl Point { fn new(x: isize, y: isize) -> Self { Self { x, y } } fn x(&self) -> isize { self.x } fn y(&self) -> isize { self.y } fn distance(&self, other: &Point) -> f64 { (((other.x - s