#pragma once #include #include namespace DB { template struct ExtractFragment { static size_t getReserveLengthForElement() { return 10; } static void execute(Pos data, size_t size, Pos & res_data, size_t & res_size) { res_data = data; res_size = 0; Pos pos = data; Pos end = pos + size; if (end != (pos = find_first_symbols<'#'>(pos, end))) { res_data = pos + (without_leading_char ? 1 : 0); res_size = end - res_data; } } }; }