The Rouille framework contains a router! macro that helps you declare a handler for every path and HTTP method. If we add a handler function that is called from a closure we used in the start_server function call, the router! macro expects a request instance as the first argument and the desired number of request handlers. Let's analyze the four handler functions in order.