## Keyboard shortcuts

Press `←` or `→` to navigate between chapters

Press `S` or `/` to search in the book

Press `?` to show this help

Press `Esc` to hide this help

# Error code E0592

This error occurs when you defined methods or associated functions with same name.

Erroneous code example:

    #![allow(unused)]
    fn main() {
    struct Foo;

    impl Foo {
        fn bar() {} // previous definition here
    }

    impl Foo {
        fn bar() {} // duplicate definition here
    }
    }

A similar error is E0201. The difference is whether there is one declaration block or not. To avoid this error, you must give each `fn` a unique name.

    #![allow(unused)]
    fn main() {
    struct Foo;

    impl Foo {
        fn bar() {}
    }

    impl Foo {
        fn baz() {} // define with different name
    }
    }