annotate libfdproto/dictionary-internal.h @ 1554:566bb46cc73f

Updated copyright information
author Sebastien Decugis <sdecugis@freediameter.net>
date Tue, 06 Oct 2020 21:34:53 +0800
parents 6c3485887511
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1451
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
1 /*********************************************************************************************************
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
2 * Software License Agreement (BSD License) *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
3 * Author: Sebastien Decugis <sdecugis@freediameter.net> *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
4 * *
1554
566bb46cc73f Updated copyright information
Sebastien Decugis <sdecugis@freediameter.net>
parents: 1451
diff changeset
5 * Copyright (c) 2020, WIDE Project and NICT *
1451
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
6 * All rights reserved. *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
7 * *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
8 * Redistribution and use of this software in source and binary forms, with or without modification, are *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
9 * permitted provided that the following conditions are met: *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
10 * *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
11 * * Redistributions of source code must retain the above *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
12 * copyright notice, this list of conditions and the *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
13 * following disclaimer. *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
14 * *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
15 * * Redistributions in binary form must reproduce the above *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
16 * copyright notice, this list of conditions and the *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
17 * following disclaimer in the documentation and/or other *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
18 * materials provided with the distribution. *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
19 * *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
20 * * Neither the name of the WIDE Project or NICT nor the *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
21 * names of its contributors may be used to endorse or *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
22 * promote products derived from this software without *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
23 * specific prior written permission of WIDE Project and *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
24 * NICT. *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
25 * *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
26 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
27 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
28 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
29 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
30 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
31 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
32 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
33 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
34 *********************************************************************************************************/
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
35
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
36 #ifndef HAD_DICTIONARY_INTERNAL_H
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
37 #define HAD_DICTIONARY_INTERNAL_H
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
38
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
39 /* Names of the base types */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
40 extern const char * type_base_name[];
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
41
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
42 /* The number of lists in an object */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
43 #define NB_LISTS_PER_OBJ 3
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
44
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
45 /* Definition of the dictionary objects */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
46 struct dict_object {
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
47 enum dict_object_type type; /* What type of object is this? */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
48 int objeyec;/* eyecatcher for this object */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
49 int typeyec;/* eyecatcher for this type of object */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
50 struct dictionary *dico; /* The dictionary this object belongs to */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
51
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
52 union {
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
53 struct dict_vendor_data vendor; /* datastr_len = strlen(vendor_name) */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
54 struct dict_application_data application; /* datastr_len = strlen(application_name) */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
55 struct dict_type_data type; /* datastr_len = strlen(type_name) */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
56 struct dict_enumval_data enumval; /* datastr_len = strlen(enum_name) */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
57 struct dict_avp_data avp; /* datastr_len = strlen(avp_name) */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
58 struct dict_cmd_data cmd; /* datastr_len = strlen(cmd_name) */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
59 struct dict_rule_data rule; /* datastr_len = 0 */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
60 } data; /* The data of this object */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
61
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
62 size_t datastr_len; /* cached length of the string inside the data. Saved when the object is created. */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
63
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
64 struct dict_object * parent; /* The parent of this object, if any */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
65
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
66 struct fd_list list[NB_LISTS_PER_OBJ];/* used to chain objects.*/
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
67 /* More information about the lists :
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
68
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
69 - the use for each list depends on the type of object. See detail below.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
70
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
71 - a sentinel for a list has its 'o' field cleared. (this is the criteria to detect end of a loop)
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
72
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
73 - The lists are always ordered. The criteria are described below. the functions to order them are referenced in dict_obj_info
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
74
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
75 - The dict_lock must be held for any list operation.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
76
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
77 => VENDORS:
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
78 list[0]: list of the vendors, ordered by their id. The sentinel is g_dict_vendors (vendor with id 0)
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
79 list[1]: sentinel for the list of AVPs from this vendor, ordered by AVP code.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
80 list[2]: sentinel for the list of AVPs from this vendor, ordered by AVP name (fd_os_cmp).
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
81
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
82 => APPLICATIONS:
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
83 list[0]: list of the applications, ordered by their id. The sentinel is g_dict_applications (application with id 0)
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
84 list[1]: not used
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
85 list[2]: not used.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
86
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
87 => TYPES:
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
88 list[0]: list of the types, ordered by their names. The sentinel is g_list_types.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
89 list[1]: sentinel for the type_enum list of this type, ordered by their constant name (fd_os_cmp).
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
90 list[2]: sentinel for the type_enum list of this type, ordered by their constant value.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
91
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
92 => TYPE_ENUMS:
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
93 list[0]: list of the contants for a given type, ordered by the constant name (fd_os_cmp). Sentinel is a (list[1]) element of a TYPE object.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
94 list[1]: list of the contants for a given type, ordered by the constant value. Sentinel is a (list[2]) element of a TYPE object.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
95 list[2]: not used
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
96
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
97 => AVPS:
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
98 list[0]: list of the AVP from a given vendor, ordered by avp code. Sentinel is a list[1] element of a VENDOR object.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
99 list[1]: list of the AVP from a given vendor, ordered by avp name (fd_os_cmp). Sentinel is a list[2] element of a VENDOR object.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
100 list[2]: sentinel for the rule list that apply to this AVP.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
101
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
102 => COMMANDS:
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
103 list[0]: list of the commands, ordered by their names (fd_os_cmp). The sentinel is g_list_cmd_name.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
104 list[1]: list of the commands, ordered by their command code and 'R' flag. The sentinel is g_list_cmd_code.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
105 list[2]: sentinel for the rule list that apply to this command.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
106
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
107 => RULES:
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
108 list[0]: list of the rules for a given (grouped) AVP or Command, ordered by the AVP vendor & code to which they refer. sentinel is list[2] of a command or (grouped) avp.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
109 list[1]: not used
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
110 list[2]: not used.
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
111
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
112 */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
113
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
114 /* Sentinel for the dispatch callbacks */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
115 struct fd_list disp_cbs;
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
116
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
117 };
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
118
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
119 /* Definition of the dictionary structure */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
120 struct dictionary {
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
121 int dict_eyec; /* Eye-catcher for the dictionary (DICT_EYECATCHER) */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
122
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
123 pthread_rwlock_t dict_lock; /* The global rwlock for the dictionary */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
124
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
125 struct dict_object dict_vendors; /* Sentinel for the list of vendors, corresponding to vendor 0 */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
126 struct dict_object dict_applications; /* Sentinel for the list of applications, corresponding to app 0 */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
127 struct fd_list dict_types; /* Sentinel for the list of types */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
128 struct fd_list dict_cmd_name; /* Sentinel for the list of commands, ordered by names */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
129 struct fd_list dict_cmd_code; /* Sentinel for the list of commands, ordered by codes */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
130
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
131 struct dict_object dict_cmd_error; /* Special command object for answers with the 'E' bit set */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
132
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
133 int dict_count[DICT_TYPE_MAX + 1]; /* Number of objects of each type */
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
134 };
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
135
6c3485887511 Move some structures to a header file for use by dbg_dict_dump_json.
Thomas Klausner <tk@giga.or.at>
parents:
diff changeset
136 #endif /* HAD_DICTIONARY_INTERNAL_H */
"Welcome to our mercurial repository"