On Thu, Feb 07, Jan Kupec wrote:
I think this is one of the central parts of the problem we need to solve.
What about merging NameKindProxy with Selectables? I mean to drop the NameKindProxy and allow a Selectable to have multiple target (installed) resolvables.
That's what we're heading for.
/** \file zypp/ui/Query.h * */
/** * Filter by the \a value of any available attribute of selectables. * * \note Selectables of a kind not supporting the specified attribute will * <b>not</b> be returned. * * \param attrid attribute identfier (sat::SolvAttr or cache::Attribute * or something implementation independent) * \param value what to search for * \param isRegex is the value a regex? */ void addAttribute(const solv::SolvAttr & attrid, const std::string & value, bool isRegex = false);
/** * Add dependency filter. * * \param dtype depenedcy type * \param name depenency name * \param edition edition for a versioned dependency * \param rel operand for a versioned dependency * * \todo maybe a isRegexp bool as in addName() for the name parameter would * be handy here as well. * \todo add more addDependecy() variants */ void addDependency(const Dep & dtype, const std::string & name, const Edition & edition = Edition(), const Rel & rel = Rel::EQ);
Keep in mind that a selectable is just a container of solvables. A selectable has no attributes (except name, kind and status). Queries will return solvables in the first place. They can of course be mapped back to selectables, meaning that 'one or more solvables inside the selectable' matched. -- cu, Michael Andres +------------------------------------------------------------------+ Key fingerprint = 2DFA 5D73 18B1 E7EF A862 27AC 3FB8 9E3A 27C6 B0E4 +------------------------------------------------------------------+ Michael Andres YaST Development ma@novell.com SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nuernberg) Maxfeldstrasse 5, D-90409 Nuernberg, Germany, ++49 (0)911 - 740 53-0 +------------------------------------------------------------------+ -- To unsubscribe, e-mail: zypp-devel+unsubscribe@opensuse.org For additional commands, e-mail: zypp-devel+help@opensuse.org