>

<p>トレイト境界を使ってこのトレイトで静的ディスパッチが出来ます。</p>

<span class='rusttest'>trait Foo { fn method(&amp;self) -&gt; String; }
impl Foo for u8 { fn method(&amp;self) -&gt; String { format!(&quot;u8: {}&quot;, *self) } }
impl Foo for String { fn method(&amp;self) -&gt; String { format!(&quot;string: {}&quot;, *self) } }
fn do_something&lt;T: Foo&gt;(x: T) {
    x.method();
}

fn main() {
    let x = 5u8;
    let y = &quot;Hello&quot;.to_string();

    do_some