1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
Association : Magnitude {
var <>key, <>value;
*new { arg key, value;
^super.newCopyArgs(key, value)
}
== { arg anAssociation;
^anAssociation respondsTo: \key and: { key == anAssociation.key }
}
hash {
^key.hash
}
< { arg anAssociation;
^key < anAssociation.key
}
printOn { arg stream;
stream << "(" << key << " -> " << value << ")";
}
storeOn { arg stream;
stream << "(" <<< key << " -> " <<< value << ")";
}
// Pattern support
embedInStream { arg inval;
^inval.add(this).yield;
}
transformEvent { arg event;
^event.add(this);
}
}
|