File tree Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -726,6 +726,22 @@ def __ge__(self, value): return self.value >= value # pylint: di
726
726
727
727
def __iter__ (self ):
728
728
return iter (self .value )
729
+
730
+ def __getitem__ (self , key ):
731
+ if isinstance (self .value , (list , dict )):
732
+ return self .value [key ]
733
+ else :
734
+ raise TypeError (f"'{ type (self .value ).__name__ } ' object does not support item access" )
735
+
736
+ def __setitem__ (self , key , value ):
737
+ if isinstance (self .value , (list , dict )):
738
+ self .value [key ] = value
739
+ self .model .changed (self .name , self .value )
740
+ for listener in self .listeners :
741
+ listener (self )
742
+ else :
743
+ raise TypeError (f"'{ type (self .value ).__name__ } ' object does not support item assignment" )
744
+
729
745
730
746
def __repr__ (self ):
731
747
return f'"{ self .value } "' if isinstance (self .value , str ) else repr (self .value )
You can’t perform that action at this time.
0 commit comments