/
NikolayIvkin
/
sqlancer2
Обзор
Документация
Войти
/
NikolayIvkin
/
sqlancer2
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/sqlancer/postgres/ast/PostgresPOSIXRegularExpression.java
65 строк
2 KB
Manuel Rigger
Introduce a new sqlancer.common package
13 авг 2020, 00:31
13 авг 2020, 00:31
cb1ba25
Код
Авторство
О чём код?
package sqlancer.postgres.ast; import sqlancer.Randomly; import sqlancer.common.ast.BinaryOperatorNode.Operator; import sqlancer.postgres.PostgresSchema.PostgresDataType; public class PostgresPOSIXRegularExpression implements PostgresExpression { private PostgresExpression string; private PostgresExpression regex; private POSIXRegex op; public enum POSIXRegex implements Operator { MATCH_CASE_SENSITIVE("~"), MATCH_CASE_INSENSITIVE("~*"), NOT_MATCH_CASE_SENSITIVE("!~"), NOT_MATCH_CASE_INSENSITIVE("!~*"); private String repr; POSIXRegex(String repr) { this.repr = repr; } public String getStringRepresentation() { return repr; } public static POSIXRegex getRandom() { return Randomly.fromOptions(values()); } @Override public String getTextRepresentation() { return toString(); } } public PostgresPOSIXRegularExpression(PostgresExpression string, PostgresExpression regex, POSIXRegex op) { this.string = string; this.regex = regex; this.op = op; } @Override public PostgresDataType getExpressionType() { return PostgresDataType.BOOLEAN; } @Override public PostgresConstant getExpectedValue() { return null; } public PostgresExpression getRegex() { return regex; } public PostgresExpression getString() { return string; } public POSIXRegex getOp() { return op; } }