In the documentation to the Amethyst game engine, I see this code snippet:
// try_fetch returns a Option<Fetch<MyResource>>
let fetched = world.try_fetch::<MyResource>();
How does this syntax work? What does it mean to put a template parameter right after a :: character? In the Rust book, I can only see template parameters after a function or a data declaration. What does it even mean to say try_fetch::()?