heuristics regexp engine configurable #2, skip rules at runtime

This commit is contained in:
Alex Bezzubov
2023-01-19 15:58:43 +01:00
parent d8913b00e9
commit 3aeb9879da
8 changed files with 141 additions and 38 deletions

View File

@ -7,6 +7,8 @@ import (
"regexp"
)
const Name = RE2
type EnryRegexp = *regexp.Regexp
func MustCompile(str string) EnryRegexp {
@ -21,9 +23,13 @@ func MustCompileMultiline(s string) EnryRegexp {
}
// MustCompileRuby used for expressions with syntax not supported by RE2.
// Now it's confusing as we use the result as [data/rule.Matcher] and
//
// (*Matcher)(nil) != nil
//
// What is a better way for an expression to indicate unsupported syntax?
// e.g. add .IsValidSyntax() to both, Matcher interface and EnryRegexp implementations?
func MustCompileRuby(s string) EnryRegexp {
// TODO(bzz): find a bettee way?
// This will only trigger a panic on .Match() for the clients
return nil
}