/* * call-seq: * token.pos_inc = pos_inc -> integer * * Set the position increment. This determines the position of this token * relative to the previous Token in a TokenStream, used in phrase * searching. * * The default value is 1. * * Some common uses for this are: * * * Set it to zero to put multiple terms in the same position. This is * useful if, e.g., a word has multiple stems. Searches for phrases * including either stem will match. In this case, all but the first * stem's increment should be set to zero: the increment of the first * instance should be one. Repeating a token with an increment of zero * can also be used to boost the scores of matches on that token. * * * Set it to values greater than one to inhibit exact phrase matches. * If, for example, one does not want phrases to match across removed * stop words, then one could build a stop word filter that removes stop * words and also sets the increment to the number of stop words removed * before each non-stop word. Then exact phrase queries will only match * when the terms occur with no intervening stop words. * */ static VALUE frb_token_set_pos_inc(VALUE self, VALUE rpos_inc) { RToken *token; GET_TK(token, self); token->pos_inc = FIX2INT(rpos_inc); return rpos_inc; }