po: Update German man pages translation
[dpkg.git] / lib / dpkg / namevalue.h
blob337b4911b6b354d70e03208a7cff0f54b29428fb
1 /*
2 * libdpkg - Debian packaging suite library routines
3 * namevalue.h - name value structure handling
5 * Copyright © 1994,1995 Ian Jackson <ijackson@chiark.greenend.org.uk>
6 * Copyright © 2009-2012, 2015 Guillem Jover <guillem@debian.org>
8 * This is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program. If not, see <https://www.gnu.org/licenses/>.
22 #ifndef LIBDPKG_NAMEVALUE_H
23 #define LIBDPKG_NAMEVALUE_H
25 #include <dpkg/macros.h>
27 DPKG_BEGIN_DECLS
29 /**
30 * @defgroup namevalue Name/Value data
31 * @ingroup dpkg-public
32 * @{
35 struct namevalue {
36 const char *name;
37 int value;
38 int length;
41 #define NAMEVALUE_DEF(n, v) \
42 [v] = { .name = n, .value = v, .length = sizeof(n) - 1 }
44 const struct namevalue *namevalue_find_by_name(const struct namevalue *head,
45 const char *str);
47 /** @} */
49 DPKG_END_DECLS
51 #endif /* LIBDPKG_NAMEVALUE_H */