// One or more trigrams, with an implicit OR between them. For case-sensitive searches,
// this is just e.g. “abc”, but for case-insensitive, it would be “abc OR abC or aBc ...” etc.
struct TrigramDisjunction {
- unsigned index; // For debugging only.
+ unsigned index = -1; // For debugging only.
// The alternatives as determined by parse_trigrams().
std::vector<uint32_t> trigram_alternatives;
// Reads a unigram, taking into account escaping (\<foo> becomes <foo>).
// Returns WILDCARD_UNIGRAM if there's an invalid unigram, ie., we found
-// a glob character (?, * or a [] group). Returns EOS_UNIGRAM if we went
+// a glob character (?, * or a [] group). Returns PREMATURE_END_UNIGRAM if we went
// past the end of the string, e.g., a string that ends in a backslash.
// The second element is always the length.
std::pair<uint32_t, size_t> read_unigram(const std::string &s, size_t start);