Skip to content

Commit 577c900

Browse files
committed
[property] Order magic methods
1 parent 063a40f commit 577c900

1 file changed

Lines changed: 17 additions & 16 deletions

File tree

odml/property.py

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,23 @@ def __init__(self, name, value=None, parent=None, unit=None,
7979

8080
self.parent = parent
8181

82+
def __len__(self):
83+
return len(self._value)
84+
85+
def __getitem__(self, key):
86+
return self._value[key]
87+
88+
def __setitem__(self, key, item):
89+
if int(key) < 0 or int(key) > self.__len__():
90+
raise IndexError("odml.Property.__setitem__: key %i invalid for "
91+
"array of length %i" % (int(key), self.__len__()))
92+
try:
93+
val = dtypes.get(item, self.dtype)
94+
self._value[int(key)] = val
95+
except Exception:
96+
raise ValueError("odml.Property.__setitem__: passed value cannot be "
97+
"converted to data type \'%s\'!" % self._dtype)
98+
8299
@property
83100
def id(self):
84101
return self._id
@@ -490,22 +507,6 @@ def get_terminology_equivalent(self):
490507
except KeyError:
491508
return None
492509

493-
def __len__(self):
494-
return len(self._value)
495-
496-
def __getitem__(self, key):
497-
return self._value[key]
498-
499-
def __setitem__(self, key, item):
500-
if int(key) < 0 or int(key) > self.__len__():
501-
raise IndexError("odml.Property.__setitem__: key %i invalid for array of length %i"
502-
% (int(key), self.__len__()))
503-
try:
504-
val = dtypes.get(item, self.dtype)
505-
self._value[int(key)] = val
506-
except Exception:
507-
raise ValueError("odml.Property.__setitem__: passed value cannot be converted to data type \'%s\'!" % self._dtype)
508-
509510
def extend(self, obj, strict=True):
510511
"""
511512
Extend the list of values stored in this property by the passed values. Method

0 commit comments

Comments
 (0)