diff --git a/jOOQ/src/main/java/org/jooq/Field.java b/jOOQ/src/main/java/org/jooq/Field.java index d06865616e..708df997d1 100644 --- a/jOOQ/src/main/java/org/jooq/Field.java +++ b/jOOQ/src/main/java/org/jooq/Field.java @@ -780,6 +780,46 @@ public interface Field extends SelectField, GroupField, FieldOrRow { @Support Field modulo(Field value); + /** + * An arithmetic expression getting this value raised to the power of exponent. + *

+ * This renders the power operation where available: + *

[this] ^ [value]
... or the power function + * elsewhere:
power([this], [value])
+ * + * @see DSL#power(Field, Number) + */ + @Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES }) + Field pow(Number exponent); + + /** + * An arithmetic expression getting this value raised to the power of exponent. + *

+ * This renders the power operation where available: + *

[this] ^ [value]
... or the power function + * elsewhere:
power([this], [value])
+ * + * @see DSL#power(Field, Field) + */ + @Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES }) + Field pow(Field exponent); + + /** + * An alias for {@link #power(Number)}. + * + * @see #power(Number) + */ + @Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES }) + Field power(Number exponent); + + /** + * An alias for {@link #power(Field)}. + * + * @see #power(Field) + */ + @Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES }) + Field power(Field exponent); + // ------------------------------------------------------------------------ // Bitwise operations // ------------------------------------------------------------------------ @@ -2513,24 +2553,6 @@ public interface Field extends SelectField, GroupField, FieldOrRow { @Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES }) Field log(int base); - /** - * This method is part of the pre-2.0 API. This API is maintained for - * backwards-compatibility. It may be removed in the future. Consider using - * equivalent methods from {@link DSLContext} - * - * @see DSL#power(Field, Number) - */ - @Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES }) - Field pow(Number exponent); - - /** - * An alias for {@link #power(Number)}. - * - * @see #power(Number) - */ - @Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES }) - Field power(Number exponent); - /** * This method is part of the pre-2.0 API. This API is maintained for * backwards-compatibility. It may be removed in the future. Consider using diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java index d897b84e38..7c5468dd91 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java @@ -1460,11 +1460,20 @@ abstract class AbstractField extends AbstractQueryPart implements Field { } @Override - @Deprecated public final Field power(Number exponent) { return pow(exponent); } + @Override + public final Field pow(Field exponent) { + return DSL.power(numeric(), exponent); + } + + @Override + public final Field power(Field exponent) { + return pow(exponent); + } + @Override @Deprecated public final Field acos() {