<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def has_button(self, button):
 		"""Check if this device has a given button. 		Args: 			button (int):
 Button to check for, see ``input.h`` for button 				definitions. 		Returns: 			bool: :obj:`True` if the device has this button, :obj:`False` if 			it does not. 		Raises: 			AssertionError 		"""


		rc = self._libinput.libinput_device_pointer_has_button(
			self._handle, button)
		assert rc >= 0, 'This device is not a pointer device'
		return bool(rc)