Files
leocad/common/lc_filter.h
T
2025-07-24 16:48:04 -07:00

31 lines
413 B
C++

#pragma once
class lcFilter
{
public:
lcFilter(const std::string_view FilterString);
~lcFilter() = default;
bool Match(const char* String) const;
protected:
static bool FastWildCompare(const char* Tame, const char* Wild);
enum class FilterOp
{
And,
AndNot,
Or,
OrNot
};
struct FilterPart
{
FilterOp Op;
bool Wildcard;
std::string String;
};
std::vector<FilterPart> mFilterParts;
};