Nix/src/libexpr/names.hh

33 lines
553 B
C++

#pragma once
#include <memory>
#include "types.hh"
#include <regex>
namespace nix {
struct DrvName
{
string fullName;
string name;
string version;
unsigned int hits;
DrvName();
DrvName(std::string_view s);
bool matches(DrvName & n);
private:
std::unique_ptr<std::regex> regex;
};
typedef list<DrvName> 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);
}