/* * call-seq; * query.eql?(other_query) -> bool * query == other_query -> bool * * Return true if +query+ equals +other_query+. Theoretically, two queries are * equal if the always return the same results, no matter what the contents * of the index. Practically, however, this is difficult to implement * efficiently for queries like BooleanQuery since the ordering of clauses * unspecified. "Ruby AND Rails" will not match "Rails AND Ruby" for example, * although their result sets will be identical. Most queries should match as * expected however. */ static VALUE frt_q_eql(VALUE self, VALUE other) { GET_Q(); Query *oq; Data_Get_Struct(other, Query, oq); return q->eq(q, oq) ? Qtrue : Qfalse; }