Skip to content

Commit 284e11b

Browse files
committed
HHH-3404 emulate regexp_like() on Sybase ASE
1 parent 10b01f3 commit 284e11b

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

hibernate-core/src/main/java/org/hibernate/dialect/SybaseASEDialect.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
import org.hibernate.sql.ast.spi.StandardSqlAstTranslatorFactory;
3838
import org.hibernate.sql.ast.tree.Statement;
3939
import org.hibernate.sql.exec.spi.JdbcOperation;
40+
import org.hibernate.type.StandardBasicTypes;
4041
import org.hibernate.type.descriptor.java.JavaType;
4142
import org.hibernate.type.descriptor.jdbc.JdbcType;
4243
import org.hibernate.type.descriptor.jdbc.TimestampJdbcType;
@@ -57,6 +58,8 @@
5758
import static org.hibernate.internal.util.JdbcExceptionHelper.extractSqlState;
5859
import static org.hibernate.internal.util.config.ConfigurationHelper.getBoolean;
5960
import static org.hibernate.internal.util.config.ConfigurationHelper.getInt;
61+
import static org.hibernate.query.sqm.produce.function.FunctionParameterType.STRING;
62+
import static org.hibernate.query.sqm.produce.function.StandardFunctionReturnTypeResolvers.invariant;
6063
import static org.hibernate.type.SqlTypes.BOOLEAN;
6164
import static org.hibernate.type.SqlTypes.DATE;
6265
import static org.hibernate.type.SqlTypes.NCLOB;
@@ -188,6 +191,13 @@ public void initializeFunctionRegistry(FunctionContributions functionContributio
188191
functionFactory.unnest_sybasease();
189192
functionFactory.generateSeries_sybasease( getMaximumSeriesSize() );
190193
functionFactory.xmltable_sybasease();
194+
195+
functionContributions.getFunctionRegistry()
196+
.patternDescriptorBuilder( "regexp_like", "?1 regexp ?2" )
197+
.setParameterTypes( STRING, STRING )
198+
.setReturnTypeResolver( invariant( functionContributions.getTypeConfiguration().getBasicTypeRegistry()
199+
.resolve( StandardBasicTypes.BOOLEAN ) ) )
200+
.register();
191201
}
192202

193203
/**

0 commit comments

Comments
 (0)