diff --git a/jOOQ/src/main/java/org/jooq/Field.java b/jOOQ/src/main/java/org/jooq/Field.java index 4636a063c8..7c1cc23e24 100644 --- a/jOOQ/src/main/java/org/jooq/Field.java +++ b/jOOQ/src/main/java/org/jooq/Field.java @@ -359,6 +359,22 @@ public interface Field extends GroupField { @Support Field add(Field value); + /** + * An alias for {@link #add(Number)}. + * + * @see #add(Number) + */ + @Support + Field plus(Number value); + + /** + * An alias for {@link #add(Field)}. + * + * @see #add(Field) + */ + @Support + Field plus(Field value); + /** * An arithmetic expression subtracting value from this. * @@ -408,6 +424,38 @@ public interface Field extends GroupField { @Support Field sub(Field value); + /** + * An alias for {@link #sub(Number)}. + * + * @see #sub(Number) + */ + @Support + Field subtract(Number value); + + /** + * An alias for {@link #sub(Field)}. + * + * @see #sub(Field) + */ + @Support + Field subtract(Field value); + + /** + * An alias for {@link #sub(Number)}. + * + * @see #sub(Number) + */ + @Support + Field minus(Number value); + + /** + * An alias for {@link #sub(Field)}. + * + * @see #sub(Field) + */ + @Support + Field minus(Field value); + /** * An arithmetic expression multiplying this with value *

@@ -434,6 +482,22 @@ public interface Field extends GroupField { @Support Field mul(Field value); + /** + * An alias for {@link #mul(Number)}. + * + * @see #mul(Number) + */ + @Support + Field multiply(Number value); + + /** + * An alias for {@link #mul(Field)}. + * + * @see #mul(Field) + */ + @Support + Field multiply(Field value); + /** * An arithmetic expression dividing this by value *

@@ -460,6 +524,22 @@ public interface Field extends GroupField { @Support Field div(Field value); + /** + * An alias for {@link #div(Number)}. + * + * @see #div(Number) + */ + @Support + Field divide(Number value); + + /** + * An alias for {@link #div(Field)}. + * + * @see #div(Field) + */ + @Support + Field divide(Field value); + /** * An arithmetic expression getting the modulo of this divided by value *

@@ -480,6 +560,22 @@ public interface Field extends GroupField { @Support Field mod(Field value); + /** + * An alias for {@link #mod(Number)}. + * + * @see #mod(Number) + */ + @Support + Field modulo(Number value); + + /** + * An alias for {@link #mod(Field)}. + * + * @see #mod(Field) + */ + @Support + Field modulo(Field value); + // ------------------------------------------------------------------------ // NULL predicates // ------------------------------------------------------------------------ @@ -1840,6 +1936,14 @@ public interface Field extends GroupField { * @see Factory#power(Field, Number) */ @Support({ ASE, CUBRID, DB2, DERBY, FIREBIRD, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE }) + Field pow(Number exponent); + + /** + * An alias for {@link #power(Number)}. + * + * @see #power(Number) + */ + @Support({ ASE, CUBRID, DB2, DERBY, FIREBIRD, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE }) Field power(Number exponent); /** diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java index 9567fa727d..3cf176caa2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java @@ -303,6 +303,70 @@ abstract class AbstractField extends AbstractQueryPart implements Field { return new Mod(this, nullSafe(value)); } + // ------------------------------------------------------------------------ + // XXX: Arithmetic operation aliases + // ------------------------------------------------------------------------ + + @Override + public final Field plus(Number value) { + return add(value); + } + + @Override + public final Field plus(Field value) { + return add(value); + } + + @Override + public final Field subtract(Number value) { + return sub(value); + } + + @Override + public final Field subtract(Field value) { + return sub(value); + } + + @Override + public final Field minus(Number value) { + return sub(value); + } + + @Override + public final Field minus(Field value) { + return sub(value); + } + + @Override + public final Field multiply(Number value) { + return mul(value); + } + + @Override + public final Field multiply(Field value) { + return mul(value); + } + + @Override + public final Field divide(Number value) { + return div(value); + } + + @Override + public final Field divide(Field value) { + return div(value); + } + + @Override + public final Field modulo(Number value) { + return mod(value); + } + + @Override + public final Field modulo(Field value) { + return mod(value); + } + // ------------------------------------------------------------------------ // XXX: Conditions created from this field // ------------------------------------------------------------------------ @@ -1029,10 +1093,15 @@ abstract class AbstractField extends AbstractQueryPart implements Field { return Factory.log(numeric(), base); } + @Override + public final Field pow(Number exponent) { + return Factory.power(numeric(), exponent); + } + @Override @Deprecated public final Field power(Number exponent) { - return Factory.power(numeric(), exponent); + return pow(exponent); } @Override