Beispiel #1
0
static Seq *FindPackages(const char *database_filename, PackagePattern *pattern)
{
    Seq *db = ReadPackageEntries(database_filename);
    Seq *matching = SeqNew(1000, NULL);

    for (size_t i = 0; i < SeqLength(db); i++)
    {
        Package *package = SeqAt(db, i);

        if (MatchPackage(pattern, package))
        {
            SeqAppend(matching, package);
        }
    }

    return matching;
}
Beispiel #2
0
static Rlist *FindPackages(const char *database_filename, PackagePattern *pattern)
{
    Rlist *db = ReadPackageEntries(database_filename);
    Rlist *matching = NULL;

    Rlist *rp = NULL;

    for (rp = db; rp != NULL; rp = rp->next)
    {
        Package *package = (Package *) rp->item;

        if (MatchPackage(pattern, package))
        {
            RlistAppendAlien(&matching, package);
        }
    }

    return matching;
}