{"body":"unit class Selkie::UI::ReactiveHash does Associative does Iterable;\n\nhas $.store is required;\nhas Str $.name is required;\n\nmethod sink {\n\t.{$!name} = True with %*UI-PATHS\n}\n\nmethod !get-val { $.sink; $!store.get-in: $!name }\nmethod !set-val($key, $value) { $!store.assoc-in: $!name, $key, :$value; self }\n\nmethod keys   { self!get-val.keys   }\nmethod values { self!get-val.values }\nmethod kv     { self!get-val.kv     }\nmethod pairs  { self!get-val.pairs  }\n\nmethod AT-KEY($key) { $.sink; $!store.get-in: $!name, $key  }\nmethod EXISTS-KEY($key) { self!get-val.EXISTS-KEY: $key }\n\nmethod STORE(Hash() $values) {\n\t$!store.assoc-in: $!name, value => $values;\n\tself\n}\n\nmethod ASSIGN-KEY($key, $value) { self!set-val: $key, $value }\n\nmethod DELETE-KEY($key) {\n\tmy $v = $.AT-KEY($key) // return Nil;\n\t$!store.assoc-in: $!name, $key, value => Nil;\n\t$v\n}\n","name":"","extension":"txt","url":"https://www.irccloud.com/pastebin/TTzx7OPg","modified":1777747310,"id":"TTzx7OPg","size":847,"lines":32,"own_paste":false,"theme":"","date":1777747310}