function hash = subsasgn(hash, s, val) % Subscripted assignment for object Hashtable % overloading subscripted reference for objects % Dot Notation vs. Function Notation % % ex: h = Hashtable('key', value) % h.key = value % h('key') = value % see help for subsasgn % % $Id$ switch (length(s)) case 2 switch s(1).type case '.' h = get(hash, s(1).subs); h = put(h, s(2).subs, val); hash = put(hash, s(1).subs, h); otherwise error('Invalid type.') end case 1 switch s.type case '()' if (length(s.subs) ~= 1) error('Only single indexing is supported.'); end hash = put(hash,s.subs{1},val); case '.' hash = put(hash,s.subs,val); otherwise error('Invalid type.') end end