1 #ifndef UTIL___MULTIPATTERN_SEARCH__HPP
2 #define UTIL___MULTIPATTERN_SEARCH__HPP
72 fBeginString = 1 << 1,
74 fWholeString = fBeginString | fEndString,
77 fWholeWord = fBeginWord | fEndWord
91 void AddPattern(
const char* pattern, TFlags
flags = 0);
93 void AddPatterns(
const vector<string>&
patterns);
94 void AddPatterns(
const vector<pair<string, TFlags>>&
patterns);
105 void GenerateDotGraph(ostream&
out)
const;
111 void GenerateArrayMapData(ostream&
out)
const;
117 void GenerateSourceCode(ostream&
out)
const;
151 void Search(
const char*
input, VoidCall2 found_callback)
const;
153 void Search(
const char*
input, BoolCall1 found_callback)
const;
155 void Search(
const char*
input, BoolCall2 found_callback)
const;
static void Search(const string &input, const FSM::CCompiledFSM &fsm, VoidCall2 found_callback)
unique_ptr< CRegExFSA > m_FSM
std::function< void(size_t, size_t)> VoidCall2
void AddPattern(const string &pattern, TFlags flags=0)
static void Search(const string &input, const FSM::CCompiledFSM &fsm, VoidCall1 found_callback)
std::function< bool(size_t, size_t)> BoolCall2
static void Search(const char *input, const FSM::CCompiledFSM &fsm, VoidCall2 found_callback)
static void Search(const char *input, const FSM::CCompiledFSM &fsm, BoolCall1 found_callback)
void Search(const string &input, BoolCall1 found_callback) const
static void Search(const string &input, const FSM::CCompiledFSM &fsm, BoolCall1 found_callback)
EOnFind
When the pattern is found, the search can be stopped or continued.
static void Search(const char *input, const FSM::CCompiledFSM &fsm, VoidCall1 found_callback)
void Search(const string &input, VoidCall1 found_callback) const
std::function< void(size_t)> VoidCall1
static void Search(const string &input, const FSM::CCompiledFSM &fsm, BoolCall2 found_callback)
void Search(const string &input, BoolCall2 found_callback) const
EFlags
Search flags (for non-RegEx patterns only!)
std::function< bool(size_t)> BoolCall1
void Search(const string &input, VoidCall2 found_callback) const
DECLARE_SAFE_FLAGS_TYPE(EFlags, TFlags)
static void Search(const char *input, const FSM::CCompiledFSM &fsm, BoolCall2 found_callback)
Include a standard set of the NCBI C++ Toolkit most basic headers.
std::ofstream out("events_result.xml")
main entry point for tests
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
string QuoteString(const string &s)
NCBI_XUTIL_EXPORT
Parameter to control printing diagnostic message about conversion of static array data from a differe...
static const char * str(char *buf, int n)