@@ -911,7 +911,7 @@ class Increment:
911911 key : DepKey
912912
913913 def __hash__ (self ):
914- return hash ((self .channel ,self .value ,self .key ))
914+ return hash ((type ( self ), self .channel ,self .value ,self .key ))
915915
916916 def __str__ (self ):
917917 return "Increment(" + "," .join ([f"{ k } =" + v .__str__ () for k ,v in vars (self ).items ()])+ ")"
@@ -923,7 +923,7 @@ class Set:
923923 key : DepKey = dataclasses .field (default_factory = lambda : DepKey ((),DepDomain .NODEP ))
924924
925925 def __hash__ (self ):
926- return hash ((self .channel ,self .value ,self .key ))
926+ return hash ((type ( self ), self .channel ,self .value ,self .key ))
927927
928928 def __str__ (self ):
929929 return "Set(" + "," .join ([f"{ k } =" + v .__str__ () for k ,v in vars (self ).items ()])+ ")"
@@ -934,7 +934,7 @@ class Wait:
934934 key_by_domain : Dict [DepDomain ,DepKey ] = dataclasses .field (default_factory = lambda : {})
935935
936936 def __hash__ (self ):
937- return hash ((self .duration ,frozenset (self .key_by_domain .items ())))
937+ return hash ((type ( self ), self .duration ,frozenset (self .key_by_domain .items ())))
938938
939939@dataclass
940940class LoopJmp :
@@ -954,7 +954,7 @@ def __post_init__(self):
954954 self .keys_by_domain_by_ch = {ch : {} for ch in self .play_channels + self .step_channels }
955955
956956 def __hash__ (self ):
957- return hash ((self .waveform ,self .play_channels ,self .step_channels ,
957+ return hash ((type ( self ), self .waveform ,self .play_channels ,self .step_channels ,
958958 frozenset ((k ,frozenset (d .items ())) for k ,d in self .keys_by_domain_by_ch .items ())))
959959
960960
0 commit comments