python: more check for diet engine in some APIs
diff --git a/bindings/python/capstone/capstone.py b/bindings/python/capstone/capstone.py
index b73d116..8f66977 100644
--- a/bindings/python/capstone/capstone.py
+++ b/bindings/python/capstone/capstone.py
@@ -50,6 +50,7 @@
     'CS_ERR_OPTION',
     'CS_ERR_DETAIL',
     'CS_ERR_VERSION',
+    'CS_ERR_MEMSETUP',
     'CS_ERR_DIET',
 
     'CS_SUPPORT_DIET',
@@ -104,6 +105,7 @@
 CS_ERR_MODE = 5    # Invalid/unsupported mode: cs_open()
 CS_ERR_OPTION = 6  # Invalid/unsupported option: cs_option()
 CS_ERR_DETAIL = 7  # Invalid/unsupported option: cs_option()
+CS_ERR_MEMSETUP = 8
 CS_ERR_VERSION = 9 # Unsupported version (bindings)
 CS_ERR_DIET = 10 # Information irrelevant in diet engine
 
@@ -426,22 +428,42 @@
 
     # get the register name, given the register ID
     def reg_name(self, reg_id):
+        if cs_support(CS_SUPPORT_DIET):
+            # Diet engine cannot provide mnemonic & op_str
+            raise CsError(CS_ERR_DIET)
+
         return _cs.cs_reg_name(self._cs.csh, reg_id)
 
     # get the instruction string
     def insn_name(self):
+        if cs_support(CS_SUPPORT_DIET):
+            # Diet engine cannot provide mnemonic & op_str
+            raise CsError(CS_ERR_DIET)
+
         return _cs.cs_insn_name(self._cs.csh, self.id)
 
     # verify if this insn belong to group with id as @group_id
     def group(self, group_id):
+        if cs_support(CS_SUPPORT_DIET):
+            # Diet engine cannot provide mnemonic & op_str
+            raise CsError(CS_ERR_DIET)
+
         return group_id in self.groups
 
     # verify if this instruction implicitly read register @reg_id
     def reg_read(self, reg_id):
+        if cs_support(CS_SUPPORT_DIET):
+            # Diet engine cannot provide mnemonic & op_str
+            raise CsError(CS_ERR_DIET)
+
         return reg_id in self.regs_read
 
     # verify if this instruction implicitly modified register @reg_id
     def reg_write(self, reg_id):
+        if cs_support(CS_SUPPORT_DIET):
+            # Diet engine cannot provide mnemonic & op_str
+            raise CsError(CS_ERR_DIET)
+
         return reg_id in self.regs_write
 
     # return number of operands having same operand type @op_type
@@ -504,7 +526,7 @@
 
     @property
     def diet(self):
-        return _cs.cs_support(CS_SUPPORT_DIET)
+        return cs_support(CS_SUPPORT_DIET)
 
 
     @property
@@ -525,7 +547,7 @@
 
 
     def support(self, query):
-        return _cs.cs_support(query)
+        return cs_support(query)
 
 
     @detail.setter