o_something()</code> は「特殊化された関数」(specialized function)と呼ばれます）</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_u8(x: u8) {
    x.method();
}

fn do_something_string(x: String) {
    x.method();
}

fn main() {
    let x = 5u8;
    let y = 