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)