function_declaration: 'def' ID parameters compound

def function_declaration(self):
        """
        function_declaration: 'def' ID parameters compound
        """
        self._process(Nature.DEF)

        identifier = Identifier(self.token.value)
        self._process(Nature.ID)

        parameters = self.parameters()
        return FunctionDeclaration(
            identifier=identifier, parameters=parameters, body=self.function_body()
        )