#pragma once #include #include #include "types.hh" namespace nix { struct DrvName { string fullName; string name; string version; unsigned int hits; DrvName(); DrvName(const string& s); bool matches(DrvName& n); private: std::unique_ptr regex; }; typedef list DrvNames; string nextComponent(string::const_iterator& p, const string::const_iterator end); int compareVersions(const string& v1, const string& v2); DrvNames drvNamesFromArgs(const Strings& opArgs); } // namespace nix