    /*
     *  call-seq:
     *     query_parser.tokenized_fields -> Array of Symbols
     *
     *  Returns the list of all tokenized_fields that the QueryParser knows about.
     */
    static VALUE
    frt_qp_get_tkz_fields(VALUE self)
    {
        GET_QP;
        int i;
        HashSet *fields = qp->tokenized_fields;
        if (fields) {
            VALUE rfields = rb_ary_new();

            for (i = 0; i < fields->size; i++) {
                rb_ary_push(rfields, ID2SYM(rb_intern((char *)fields->elems[i])));
            }

            return rfields;
        }
        else {
            return Qnil;
        }
    }