def _CData_value(self, value): # array accepts very strange parameters as part of structure # or function argument... from ctypes import c_char, c_wchar if issubclass(self._type_, (c_char, c_wchar)): if isinstance(value, basestring): if len(value) > self._length_: raise ValueError("Invalid length") value = self(*value) else: if isinstance(value, tuple): if len(value) > self._length_: raise RuntimeError("Invalid length") value = self(*value) return _CDataMeta._CData_value(self, value)
def _CData_value(self, value): if isinstance(value, tuple): value = self(*value) return _CDataMeta._CData_value(self, value)