Commit Graph

9408 Commits

Author SHA1 Message Date
Lukas Eder
091322bd4d [jOOQ/jOOQ#11099] Some performance improvements in Convert
- Shortcut in Convert::convert if the value is already of the right type, prevents the ConvertAll allocations, and a few branches
- Shortcut in Convert::convert0 if the Converter.fromType() is Object.class, then we don't need an additional ConvertAll<>(fromType) round trip, which is a no-op
- In ConvertAll, delay the calls to wrapper(Class) until they're needed
- In ConvertAll, shortcuts should be ordered as:
  - null check
  - class equality check
  - class assignability check
  - wrapper type equality check
2020-12-10 14:09:21 +01:00
Lukas Eder
78e211fee3 [jOOQ/jOOQ#11099] Cache inverse converters in MockResultSet::get 2020-12-10 12:59:27 +01:00
Lukas Eder
014a292a8a [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] Trigonometric fns
- COS
- COSH
- COT
- COTH
- SIN
- SINH
2020-12-10 12:00:11 +01:00
Lukas Eder
92ecc6788e [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] Fixed regression
DSL::abs must maintain the input data type, not override it with the default INTEGER type
2020-12-10 11:06:55 +01:00
Lukas Eder
66e86da28e [jOOQ/jOOQ#11066] Tests failed for jooq-spring-boot-example 2020-12-09 16:51:30 +01:00
Lukas Eder
685f2fdbe8 Re-generated example code 2020-12-09 15:53:14 +01:00
Lukas Eder
519e9ae501 [jOOQ/jOOQ#11066] Fixed jooq-jpa-example pom.xml dependencies 2020-12-09 15:53:08 +01:00
Lukas Eder
2d3b46394d [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] Added Javadoc 2020-12-09 15:33:15 +01:00
Lukas Eder
c2805f964f [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] LENGTH
Including CHAR_LENGTH, BIT_LENGTH, OCTET_LENGTH
2020-12-08 22:40:23 +01:00
Lukas Eder
93c58aa9f5 [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] SPLIT_PART 2020-12-08 22:07:58 +01:00
Lukas Eder
910f2dd760 [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] Too many overloads 2020-12-08 21:52:34 +01:00
Lukas Eder
72c85e4ed7 [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] SPACE 2020-12-08 21:36:15 +01:00
Lukas Eder
16bee574ef [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] TRANSLATE 2020-12-08 21:25:52 +01:00
Lukas Eder
74775ffce5 [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] Avoid rawtypes 2020-12-08 21:19:16 +01:00
Lukas Eder
574e754752 [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] LPAD / RPAD 2020-12-08 20:56:52 +01:00
Lukas Eder
aecc0e5b4c [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] ROWNUM 2020-12-08 17:49:02 +01:00
Lukas Eder
2f8d68812c [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] REPLACE 2020-12-08 17:04:43 +01:00
Lukas Eder
7b659728fa [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] Fix regression
There needs to be a mechanism to identify the data type of a function based on its default type and/or arguments. So far, there's a weak correlation of the behaviour and whether we're calling Tools::anyNotNull or Tools::allNotNull. Further refactorings will probably invalidate this correlation
2020-12-08 16:57:05 +01:00
Lukas Eder
c9dca0b211 [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] POSITION 2020-12-08 16:46:06 +01:00
Lukas Eder
ddae3adfca [jOOQ/jOOQ#11105] NullPointerException when GenerationTool is not properly initialised 2020-12-08 15:19:03 +01:00
Lukas Eder
5c41eea8e3 [jOOQ/jOOQ#11103] NullPointerException when custom JavaGenerator subclasses don't call JavaWriter.printPackageSpecification() 2020-12-08 14:38:37 +01:00
Lukas Eder
c254373003 [jOOQ/jOOQ#11101] Misleading error message when something goes wrong in the code generator 2020-12-08 09:13:48 +01:00
Lukas Eder
df2f737a7f [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] UPPER / LOWER 2020-12-08 00:11:10 +01:00
Lukas Eder
eb2bd7719d [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] TRIM/LTRIM/RTRIM 2020-12-07 23:36:32 +01:00
Lukas Eder
1a1a9ae728 [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] SUBSTRING
- Use API code generator to generate function expression tree
implementations
2020-12-07 16:54:29 +01:00
Lukas Eder
6e85c37a54 [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] LEFT / RIGHT
- Fixed formatting
2020-12-07 11:45:33 +01:00
Lukas Eder
f2036e022e [jOOQ/jOOQ#11097] Add single argument DSL.function() overload 2020-12-04 22:12:27 +01:00
Lukas Eder
5b1e7eb50f [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] WIP 2020-12-04 21:47:22 +01:00
Lukas Eder
e137636a9e [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] SUBSTRING 2020-12-04 17:55:15 +01:00
Lukas Eder
a95431170d [jOOQ/jOOQ#11095] KotlinGenerator should take ParameterDefinition nullability into consideration 2020-12-04 15:19:39 +01:00
Lukas Eder
a545351406 [jOOQ/jOOQ#11061] Delay application of nullability of DataTypeProxy
A the time a condition is formed from FieldProxy components that reference DataTypeProxy, the data type is not yet known, so making it nullable must be a proxied, delaying operation as well.
2020-12-04 14:37:21 +01:00
Lukas Eder
a063a6ec3f [jOOQ/jOOQ#11061] Delay application of nullability of DataTypeProxy
A the time a condition is formed from FieldProxy components that reference DataTypeProxy, the data type is not yet known, so making it nullable must be a proxied, delaying operation as well.
2020-12-04 14:37:16 +01:00
Lukas Eder
8567ccfe57 [jOOQ/jOOQ#11093] Use instance methods in parser implementation 2020-12-04 13:42:35 +01:00
Lukas Eder
866f98d31e [jOOQ/jOOQ#11061] OVERLAPS support 2020-12-04 10:24:29 +01:00
Lukas Eder
0e23dde879 [jOOQ/jOOQ#11092] Deprecate DSL.nullSafe() and related protected methods, and move them to Tools 2020-12-04 10:04:25 +01:00
Lukas Eder
d1db74fc4b [jOOQ/jOOQ#11089] Add parser support for COERCE(x AS <data type>) 2020-12-04 09:07:43 +01:00
Lukas Eder
6d7f2b42db [jOOQ/jOOQ#11061] BETWEEN predicate 2020-12-03 21:37:43 +01:00
Lukas Eder
e0e84f635f [jOOQ/jOOQ#11061] More bind variable type lookups
- inverse compare conditions: ? = COL
- IN predicate
- Predicates with correlated subqueries (select COL) = ?
2020-12-03 21:24:15 +01:00
Lukas Eder
0ae19d527b [jOOQ/jOOQ#8517] Row[N].eq(Row[N]) should apply data type bindings if necessary 2020-12-03 17:56:05 +01:00
Lukas Eder
995cce0d6e [jOOQ/jOOQ#11086] Wrong SQL generated when DomainDataType is loaded
before base SQLDataType for SQLDialect.DEFAULT
2020-12-03 17:16:56 +01:00
Lukas Eder
9b6cce0640 [jOOQ/jOOQ#11054] Fix default values 2020-12-03 16:16:03 +01:00
Lukas Eder
b8f36e6ec1 [jOOQ/jOOQ#11058] Reference AbstractRow if possible 2020-12-03 15:30:52 +01:00
Lukas Eder
f6ec7568fe [jOOQ/jOOQ#11058] Avoid calling AbstractRecord.fieldsRow() 2020-12-03 12:49:42 +01:00
Lukas Eder
ec1e3d5b50 [jOOQ/jOOQ#11070] Propagate type nullability through API - WIP 2020-12-03 10:50:19 +01:00
Lukas Eder
07997e84d4 [jOOQ/jOOQ#11070] Can't static import JSR-310 types (Java 6) 2020-12-02 21:50:38 +01:00
Lukas Eder
2f68a13de5 [jOOQ/jOOQ#11070] Propagate type nullability through API - WIP 2020-12-02 21:40:16 +01:00
Lukas Eder
02ebcc4312 [jOOQ/jOOQ#11078] Override CatalogImpl.equals() 2020-12-02 17:02:35 +01:00
Lukas Eder
9d3dc2e7d5 [jOOQ/jOOQ#11076] Add support for SQLDialect.MYSQL_5_6 2020-12-02 12:54:49 +01:00
Lukas Eder
8a27b832d1 [jOOQ/jOOQ#11074] Replace Field expressions for bind variables in parser 2020-12-02 12:25:13 +01:00
Lukas Eder
75568de31b [jOOQ/jOOQ#11074] Replace Param expressions for bind variables in parser 2020-12-02 12:08:33 +01:00