docs: def function_type(self):
          """returns function type. See :class:`type_t` hierarchy"""
          return cpptypes.free_function_type_t(
              return_type=self.return_type,
              arguments_types=[
                  arg.decl_type for arg in self.arguments])