void TermMatchTreeConverter::ProcessNGramBuffer(RowMatchNode::Builder& builder, RingBuffer<Term, Term::c_log2MaxGramSize + 1>& gramBuffer) { const size_t count = gramBuffer.GetCount(); LogAssertB(count > 0, "must have non-empty gram."); Term term(gramBuffer[0]); AppendTermRows(builder, term); for (size_t n = 1; n < count; ++n) { term.AddTerm(gramBuffer[n], m_index.GetConfiguration()); AppendTermRows(builder, term); } gramBuffer.PopFront(); }