1 /** \file z-uifr1.c
2 \brief ASN.1 Module UserInfoFormat-searchResult-1
3
4 Generated automatically by YAZ ASN.1 Compiler 0.4
5 */
6 #if HAVE_CONFIG_H
7 #include <config.h>
8 #endif
9
10 #include <yaz/z-uifr1.h>
11
z_SearchInfoReport_s(ODR o,Z_SearchInfoReport_s ** p,int opt,const char * name)12 int z_SearchInfoReport_s(ODR o, Z_SearchInfoReport_s **p, int opt, const char *name)
13 {
14 if (!odr_sequence_begin(o, p, sizeof(**p), name))
15 return odr_missing(o, opt, name) && odr_ok (o);
16 return
17 odr_implicit_tag(o, z_InternationalString,
18 &(*p)->subqueryId, ODR_CONTEXT, 1, 1, "subqueryId") &&
19 odr_implicit_tag(o, odr_bool,
20 &(*p)->fullQuery, ODR_CONTEXT, 2, 0, "fullQuery") &&
21 odr_explicit_tag(o, z_QueryExpression,
22 &(*p)->subqueryExpression, ODR_CONTEXT, 3, 1, "subqueryExpression") &&
23 odr_explicit_tag(o, z_QueryExpression,
24 &(*p)->subqueryInterpretation, ODR_CONTEXT, 4, 1, "subqueryInterpretation") &&
25 odr_explicit_tag(o, z_QueryExpression,
26 &(*p)->subqueryRecommendation, ODR_CONTEXT, 5, 1, "subqueryRecommendation") &&
27 odr_implicit_tag(o, odr_integer,
28 &(*p)->subqueryCount, ODR_CONTEXT, 6, 1, "subqueryCount") &&
29 odr_implicit_tag(o, z_IntUnit,
30 &(*p)->subqueryWeight, ODR_CONTEXT, 7, 1, "subqueryWeight") &&
31 odr_implicit_tag(o, z_ResultsByDB,
32 &(*p)->resultsByDB, ODR_CONTEXT, 8, 1, "resultsByDB") &&
33 odr_sequence_end(o);
34 }
35
z_SearchInfoReport(ODR o,Z_SearchInfoReport ** p,int opt,const char * name)36 int z_SearchInfoReport(ODR o, Z_SearchInfoReport **p, int opt, const char *name)
37 {
38 if (!odr_initmember(o, p, sizeof(**p)))
39 return odr_missing(o, opt, name);
40 if (odr_sequence_of(o, (Odr_fun) z_SearchInfoReport_s, &(*p)->elements,
41 &(*p)->num, name))
42 return 1;
43 if (o->direction == ODR_DECODE)
44 *p = 0;
45 return odr_missing(o, opt, name);
46 }
47
z_ResultsByDB_sList(ODR o,Z_ResultsByDB_sList ** p,int opt,const char * name)48 int z_ResultsByDB_sList(ODR o, Z_ResultsByDB_sList **p, int opt, const char *name)
49 {
50 if (!odr_initmember(o, p, sizeof(**p)))
51 return odr_missing(o, opt, name);
52 if (odr_sequence_of(o, (Odr_fun) z_DatabaseName, &(*p)->elements,
53 &(*p)->num, name))
54 return 1;
55 if (o->direction == ODR_DECODE)
56 *p = 0;
57 return odr_missing(o, opt, name);
58 }
59
z_ResultsByDB_s(ODR o,Z_ResultsByDB_s ** p,int opt,const char * name)60 int z_ResultsByDB_s(ODR o, Z_ResultsByDB_s **p, int opt, const char *name)
61 {
62 static Odr_arm arm[] = {
63 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_ResultsByDB_s_all,
64 (Odr_fun) odr_null, "all"},
65 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_ResultsByDB_s_list,
66 (Odr_fun) z_ResultsByDB_sList, "list"},
67 {-1, -1, -1, -1, (Odr_fun) 0, 0}
68 };
69 if (!odr_sequence_begin(o, p, sizeof(**p), name))
70 return odr_missing(o, opt, name) && odr_ok (o);
71 return
72 odr_constructed_begin(o, &(*p)->u, ODR_CONTEXT, 1, "databases") &&
73 odr_choice(o, arm, &(*p)->u, &(*p)->which, 0) &&
74 odr_constructed_end(o) &&
75 odr_implicit_tag(o, odr_integer,
76 &(*p)->count, ODR_CONTEXT, 2, 1, "count") &&
77 odr_implicit_tag(o, z_InternationalString,
78 &(*p)->resultSetName, ODR_CONTEXT, 3, 1, "resultSetName") &&
79 odr_sequence_end(o);
80 }
81
z_ResultsByDB(ODR o,Z_ResultsByDB ** p,int opt,const char * name)82 int z_ResultsByDB(ODR o, Z_ResultsByDB **p, int opt, const char *name)
83 {
84 if (!odr_initmember(o, p, sizeof(**p)))
85 return odr_missing(o, opt, name);
86 if (odr_sequence_of(o, (Odr_fun) z_ResultsByDB_s, &(*p)->elements,
87 &(*p)->num, name))
88 return 1;
89 if (o->direction == ODR_DECODE)
90 *p = 0;
91 return odr_missing(o, opt, name);
92 }
93
z_QueryExpressionTerm(ODR o,Z_QueryExpressionTerm ** p,int opt,const char * name)94 int z_QueryExpressionTerm(ODR o, Z_QueryExpressionTerm **p, int opt, const char *name)
95 {
96 if (!odr_sequence_begin(o, p, sizeof(**p), name))
97 return odr_missing(o, opt, name) && odr_ok (o);
98 return
99 odr_explicit_tag(o, z_Term,
100 &(*p)->queryTerm, ODR_CONTEXT, 1, 0, "queryTerm") &&
101 odr_implicit_tag(o, z_InternationalString,
102 &(*p)->termComment, ODR_CONTEXT, 2, 1, "termComment") &&
103 odr_sequence_end(o);
104 }
105
z_QueryExpression(ODR o,Z_QueryExpression ** p,int opt,const char * name)106 int z_QueryExpression(ODR o, Z_QueryExpression **p, int opt, const char *name)
107 {
108 static Odr_arm arm[] = {
109 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_QueryExpression_term,
110 (Odr_fun) z_QueryExpressionTerm, "term"},
111 {ODR_EXPLICIT, ODR_CONTEXT, 2, Z_QueryExpression_query,
112 (Odr_fun) z_Query, "query"},
113 {-1, -1, -1, -1, (Odr_fun) 0, 0}
114 };
115 if (!odr_initmember(o, p, sizeof(**p)))
116 return odr_missing(o, opt, name);
117 if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
118 return 1;
119 if (o->direction == ODR_DECODE)
120 *p = 0;
121 return odr_missing(o, opt, name);
122 }
123