/*
* call-seq:
* SpanPrefixQuery.new(field, prefix, max_terms = 256) -> query
*
* Create a new SpanPrefixQuery which matches all documents with the prefix
* +prefix+ in the field +field+.
*/
static VALUE
frt_spanprq_init(int argc, VALUE *argv, VALUE self)
{
VALUE rfield, rprefix, rmax_terms;
int max_terms = SPAN_PREFIX_QUERY_MAX_TERMS;
Query *q;
if (rb_scan_args(argc, argv, "21", &rfield, &rprefix, &rmax_terms) == 3) {
max_terms = FIX2INT(rmax_terms);
}
q = spanprq_new(frt_field(rfield), StringValuePtr(rprefix));
((SpanPrefixQuery *)q)->max_terms = max_terms;
Frt_Wrap_Struct(self, NULL, &frt_q_free, q);
object_add(q, self);
return self;
}