parent $lock_class object $not_lock_class var $root owners [$not_lock_class] var $root owned [$not_lock_class] var $root manager $not_lock_class var $root writable [$not_lock_class] var $root readable ['parameters, 'methods, 'code] var $root dbref 'not_lock_class method new arg lock; if (type(lock) != 'frob) throw(~perm, "Argument is not a lock."); return <this(), [lock]>; . method try arg lock; return !((lock[1]).try(obj)); .