def function_type(self):
if self.has_static:<EOL><INDENT>return cpptypes.free_function_type_t(<EOL>return_type=self.return_type,<EOL>arguments_types=[arg.decl_type for arg in self.arguments])<EOL><DEDENT>return cpptypes.member_function_type_t(<EOL>class_inst=self.parent,<EOL>return_type=self.return_type,<EOL>arguments_types=[arg.decl_type for arg in self.arguments],<EOL>has_const=self.has_const)<EOL>
returns function type. See :class:`type_t` hierarchy