Cython API: column elements: added possibility to check if an element
exists from its index, and a dict-like get() method
This commit is contained in:
@ -371,8 +371,18 @@ cdef class Column_line :
|
|||||||
self._column.set_item(self._index, elt_id, value)
|
self._column.set_item(self._index, elt_id, value)
|
||||||
|
|
||||||
|
|
||||||
def __contains__(self, object element_name):
|
def get(self, object elt_id, object default=None): # TODO returns default if None???
|
||||||
return (tobytes(element_name) in self._column.elements_names)
|
if elt_id in self:
|
||||||
|
return self._column.get_item(self._index, elt_id)
|
||||||
|
else:
|
||||||
|
return default
|
||||||
|
|
||||||
|
|
||||||
|
def __contains__(self, object elt_id):
|
||||||
|
if type(elt_id) == int:
|
||||||
|
return elt_id < self._column.nb_elements_per_line
|
||||||
|
else:
|
||||||
|
return (tobytes(elt_id) in self._column.elements_names)
|
||||||
|
|
||||||
|
|
||||||
def __repr__(self) :
|
def __repr__(self) :
|
||||||
|
Reference in New Issue
Block a user