8 MODULE = Net::Z3950::ZOOM PACKAGE = Net::Z3950::ZOOM
13 # It seems that when one of these functions is called from Perl with
14 # a string-constant argument, that is not recognised as suitable to
15 # be mapped onto a "const char*" argument. The only fix I can find is
16 # to delete as the "const" qualifiers from "char*" arguments:
17 # overriding the auto-generated prototyping with PROTOTYPE: $$
18 # doesn't help (and indeed seems to make no difference at all).
21 ZOOM_connection_new(host, portnum)
26 ZOOM_connection_create(options)
30 ZOOM_connection_connect(c, host, portnum)
36 ZOOM_connection_destroy(c)
40 ZOOM_connection_option_get(c, key)
45 ZOOM_connection_option_set(c, key, val)
51 ZOOM_connection_option_setl(c, key, val, len)
57 # The reference parameters, `cp' and `addinfo', need to already have
58 # values when this function is called, otherwise an "uninitialised
59 # value" warning is generated. As far as I can see, there is no way
60 # around this: no way to specify in a prototype that an argument is
61 # allowed to be undefined, for example. Since these function will
62 # never be called directly by well-behaved client code, but only by
63 # our own wrapper classes, I think we can live with that.
65 # The poxing about with cpp and caddinfo is due to Perl XS's lack of
66 # support for const char**, but who can blame it? If you ask me, the
67 # whole "const" thing was well-intentioned by ghastly mistake.
70 ZOOM_connection_error(c, cp, addinfo)
75 const char *ccp, *caddinfo;
76 RETVAL = ZOOM_connection_error(c, &ccp, &caddinfo);
78 addinfo = (char*) caddinfo;
85 ZOOM_connection_error_x(c, cp, addinfo, diagset)
92 ZOOM_connection_errcode(c)
96 ZOOM_connection_errmsg(c)
100 ZOOM_connection_addinfo(c)
108 ZOOM_connection_last_event(cs)
112 ZOOM_connection_search(arg0, q)
116 # "const" discarded from type of `q'
118 ZOOM_connection_search_pqf(c, q)
123 ZOOM_resultset_destroy(r)
127 ZOOM_resultset_option_get(r, key)
132 ZOOM_resultset_option_set(r, key, val)
138 ZOOM_resultset_size(r)
142 ZOOM_resultset_records(r, recs, start, count)
149 ZOOM_resultset_record(s, pos)
154 ZOOM_resultset_record_immediate(s, pos)
159 ZOOM_resultset_cache_reset(r)
163 ZOOM_record_get(rec, type, len)
169 ZOOM_record_destroy(rec)
173 ZOOM_record_clone(srec)
180 ZOOM_query_destroy(s)
184 ZOOM_query_cql(s, str)
189 ZOOM_query_prefix(s, str)
194 ZOOM_query_sortby(s, criteria)
196 const char * criteria
199 ZOOM_connection_scan(c, startterm)
201 const char * startterm
204 ZOOM_scanset_term(scan, pos, occ, len)
211 ZOOM_scanset_display_term(scan, pos, occ, len)
218 ZOOM_scanset_size(scan)
222 ZOOM_scanset_destroy(scan)
226 ZOOM_scanset_option_get(scan, key)
231 ZOOM_scanset_option_set(scan, key, val)
237 ZOOM_connection_package(c, options)
242 ZOOM_package_destroy(p)
246 ZOOM_package_send(p, type)
251 ZOOM_package_option_get(p, key)
256 ZOOM_package_option_set(p, key, val)
262 ZOOM_resultset_sort(r, sort_type, sort_spec)
264 const char * sort_type
265 const char * sort_spec
267 ZOOM_options_callback
268 ZOOM_options_set_callback(opt, c, handle)
270 ZOOM_options_callback c
274 ZOOM_options_create()
277 ZOOM_options_create_with_parent(parent)
281 ZOOM_options_create_with_parent2(parent1, parent2)
286 ZOOM_options_get(opt, name)
291 ZOOM_options_set(opt, name, v)
297 ZOOM_options_setl(opt, name, value, len)
304 ZOOM_options_destroy(opt)
308 ZOOM_options_get_bool(opt, name, defa)
314 ZOOM_options_get_int(opt, name, defa)
320 ZOOM_options_set_int(opt, name, value)