dpkg 1.21.11
Data Structures | Typedefs | Functions
Package array primitives
Collaboration diagram for Package array primitives:

Data Structures

struct  pkg_array
 Holds an array of pointers to package data. More...
 

Typedefs

typedef struct pkginfopkg_mapper_func(const char *name)
 
typedef void pkg_array_visitor_func(struct pkg_array *a, struct pkginfo *pkg, void *pkg_data)
 

Functions

void pkg_array_init_from_hash (struct pkg_array *a)
 Initialize a package array from the package database. More...
 
void pkg_array_init_from_names (struct pkg_array *a, pkg_mapper_func *pkg_mapper, const char **pkg_names)
 
void pkg_array_foreach (struct pkg_array *a, pkg_array_visitor_func *pkg_visitor, void *pkg_data)
 Visit each non-NULL package in a package array. More...
 
void pkg_array_sort (struct pkg_array *a, pkg_sorter_func *pkg_sort)
 Sort a package array. More...
 
void pkg_array_destroy (struct pkg_array *a)
 Destroy a package array. More...
 

Detailed Description

Typedef Documentation

◆ pkg_array_visitor_func

typedef void pkg_array_visitor_func(struct pkg_array *a, struct pkginfo *pkg, void *pkg_data)

◆ pkg_mapper_func

typedef struct pkginfo * pkg_mapper_func(const char *name)

Function Documentation

◆ pkg_array_destroy()

void pkg_array_destroy ( struct pkg_array a)

Destroy a package array.

Frees the allocated memory and resets the members.

Parameters
aThe array to destroy.

References pkg_array::n_pkgs, and pkg_array::pkgs.

Referenced by writedb_records().

Here is the caller graph for this function:

◆ pkg_array_foreach()

void pkg_array_foreach ( struct pkg_array a,
pkg_array_visitor_func pkg_visitor,
void *  pkg_data 
)

Visit each non-NULL package in a package array.

Parameters
aThe array to visit.
pkg_visitorThe function to visit each item of the array.
pkg_dataData to pass pkg_visit for each package visited.

References pkg_array::n_pkgs, and pkg_array::pkgs.

◆ pkg_array_init_from_hash()

void pkg_array_init_from_hash ( struct pkg_array a)

Initialize a package array from the package database.

Parameters
aThe array to initialize.

References internerr, m_malloc(), pkg_array::n_pkgs, pkg_hash_count_pkg(), pkg_hash_iter_free(), pkg_hash_iter_new(), pkg_hash_iter_next_pkg(), and pkg_array::pkgs.

Referenced by audit(), and writedb_records().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pkg_array_init_from_names()

void pkg_array_init_from_names ( struct pkg_array a,
pkg_mapper_func pkg_mapper,
const char **  pkg_names 
)

◆ pkg_array_sort()

void pkg_array_sort ( struct pkg_array a,
pkg_sorter_func pkg_sort 
)

Sort a package array.

Parameters
aThe array to sort.
pkg_sortThe function to sort the array.

References pkg_array::n_pkgs, and pkg_array::pkgs.

Referenced by writedb_records().

Here is the caller graph for this function: