summaryrefslogtreecommitdiffstats
path: root/yql/essentials/tools/yql_highlight/highlighting.h
blob: 6cb4e0dd691faadb9ceefd7981e91dbbf64fa157 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#pragma once

#include <yql/essentials/sql/v1/highlight/sql_highlight.h>

namespace NSQLHighlight {

    bool IsCaseInsensitive(const THighlighting& highlighting);

    template <std::invocable<const TUnit&> Action>
    void ForEachMultiLine(const THighlighting& highlighting, Action action) {
        for (const TUnit& unit : highlighting.Units) {
            TMaybe<TRangePattern> range = unit.RangePattern;
            if (!range) {
                continue;
            }

            action(unit);
        }
    }

} // namespace NSQLHighlight