From d9e471771a000952eae6147bab52813bb429b80b Mon Sep 17 00:00:00 2001
From: Joas Schilling <coding@schilljs.com>
Date: Sat, 7 Nov 2020 14:06:03 +0100
Subject: [PATCH] Update parameters

Signed-off-by: Joas Schilling <coding@schilljs.com>
---
 .../FunctionBuilder/FunctionBuilder.php             | 13 +++++++++++++
 .../FunctionBuilder/OCIFunctionBuilder.php          |  4 ++--
 .../FunctionBuilder/SqliteFunctionBuilder.php       | 13 +++++++++++++
 lib/public/DB/QueryBuilder/IFunctionBuilder.php     | 10 ++++------
 4 files changed, 32 insertions(+), 8 deletions(-)

diff --git a/lib/private/DB/QueryBuilder/FunctionBuilder/FunctionBuilder.php b/lib/private/DB/QueryBuilder/FunctionBuilder/FunctionBuilder.php
index a49edc505f5..23a834a9c49 100644
--- a/lib/private/DB/QueryBuilder/FunctionBuilder/FunctionBuilder.php
+++ b/lib/private/DB/QueryBuilder/FunctionBuilder/FunctionBuilder.php
@@ -27,6 +27,9 @@ namespace OC\DB\QueryBuilder\FunctionBuilder;
 use OC\DB\QueryBuilder\QueryFunction;
 use OC\DB\QueryBuilder\QuoteHelper;
 use OCP\DB\QueryBuilder\IFunctionBuilder;
+use OCP\DB\QueryBuilder\ILiteral;
+use OCP\DB\QueryBuilder\IParameter;
+use OCP\DB\QueryBuilder\IQueryFunction;
 
 class FunctionBuilder implements IFunctionBuilder {
 	/** @var QuoteHelper */
@@ -87,10 +90,20 @@ class FunctionBuilder implements IFunctionBuilder {
 		return new QueryFunction('MIN(' . $this->helper->quoteColumnName($field) . ')');
 	}
 
+	/**
+	 * @param string|ILiteral|IParameter|IQueryFunction $x
+	 * @param string|ILiteral|IParameter|IQueryFunction $y
+	 * @return IQueryFunction
+	 */
 	public function greatest($x, $y) {
 		return new QueryFunction('GREATEST(' . $this->helper->quoteColumnName($x) . ', ' . $this->helper->quoteColumnName($y) . ')');
 	}
 
+	/**
+	 * @param string|ILiteral|IParameter|IQueryFunction $x
+	 * @param string|ILiteral|IParameter|IQueryFunction $y
+	 * @return IQueryFunction
+	 */
 	public function least($x, $y) {
 		return new QueryFunction('LEAST(' . $this->helper->quoteColumnName($x) . ', ' . $this->helper->quoteColumnName($y) . ')');
 	}
diff --git a/lib/private/DB/QueryBuilder/FunctionBuilder/OCIFunctionBuilder.php b/lib/private/DB/QueryBuilder/FunctionBuilder/OCIFunctionBuilder.php
index 556ef22144b..aec92574581 100644
--- a/lib/private/DB/QueryBuilder/FunctionBuilder/OCIFunctionBuilder.php
+++ b/lib/private/DB/QueryBuilder/FunctionBuilder/OCIFunctionBuilder.php
@@ -43,7 +43,7 @@ class OCIFunctionBuilder extends FunctionBuilder {
 	 *
 	 * @param string|ILiteral|IParameter|IQueryFunction $x
 	 * @param string|ILiteral|IParameter|IQueryFunction $y
-	 * @return QueryFunction
+	 * @return IQueryFunction
 	 */
 	public function greatest($x, $y) {
 		if (is_string($y) || $y instanceof IQueryFunction) {
@@ -63,7 +63,7 @@ class OCIFunctionBuilder extends FunctionBuilder {
 	 *
 	 * @param string|ILiteral|IParameter|IQueryFunction $x
 	 * @param string|ILiteral|IParameter|IQueryFunction $y
-	 * @return QueryFunction
+	 * @return IQueryFunction
 	 */
 	public function least($x, $y) {
 		if (is_string($y) || $y instanceof IQueryFunction) {
diff --git a/lib/private/DB/QueryBuilder/FunctionBuilder/SqliteFunctionBuilder.php b/lib/private/DB/QueryBuilder/FunctionBuilder/SqliteFunctionBuilder.php
index 6d8e947c407..f759fb22fde 100644
--- a/lib/private/DB/QueryBuilder/FunctionBuilder/SqliteFunctionBuilder.php
+++ b/lib/private/DB/QueryBuilder/FunctionBuilder/SqliteFunctionBuilder.php
@@ -25,16 +25,29 @@
 namespace OC\DB\QueryBuilder\FunctionBuilder;
 
 use OC\DB\QueryBuilder\QueryFunction;
+use OCP\DB\QueryBuilder\ILiteral;
+use OCP\DB\QueryBuilder\IParameter;
+use OCP\DB\QueryBuilder\IQueryFunction;
 
 class SqliteFunctionBuilder extends FunctionBuilder {
 	public function concat($x, $y) {
 		return new QueryFunction('(' . $this->helper->quoteColumnName($x) . ' || ' . $this->helper->quoteColumnName($y) . ')');
 	}
 
+	/**
+	 * @param string|ILiteral|IParameter|IQueryFunction $x
+	 * @param string|ILiteral|IParameter|IQueryFunction $y
+	 * @return IQueryFunction
+	 */
 	public function greatest($x, $y) {
 		return new QueryFunction('MAX(' . $this->helper->quoteColumnName($x) . ', ' . $this->helper->quoteColumnName($y) . ')');
 	}
 
+	/**
+	 * @param string|ILiteral|IParameter|IQueryFunction $x
+	 * @param string|ILiteral|IParameter|IQueryFunction $y
+	 * @return IQueryFunction
+	 */
 	public function least($x, $y) {
 		return new QueryFunction('MIN(' . $this->helper->quoteColumnName($x) . ', ' . $this->helper->quoteColumnName($y) . ')');
 	}
diff --git a/lib/public/DB/QueryBuilder/IFunctionBuilder.php b/lib/public/DB/QueryBuilder/IFunctionBuilder.php
index e744d653d78..aa11e42d622 100644
--- a/lib/public/DB/QueryBuilder/IFunctionBuilder.php
+++ b/lib/public/DB/QueryBuilder/IFunctionBuilder.php
@@ -137,9 +137,8 @@ interface IFunctionBuilder {
 	 *
 	 * If you want to get the maximum value of all rows in a column, use `max` instead
 	 *
-	 * @param mixed $x the first input field or number
-	 * @param mixed $y the first input field or number
-	 *
+	 * @param string|ILiteral|IParameter|IQueryFunction $x
+	 * @param string|ILiteral|IParameter|IQueryFunction $y
 	 * @return IQueryFunction
 	 * @since 18.0.0
 	 */
@@ -150,9 +149,8 @@ interface IFunctionBuilder {
 	 *
 	 * If you want to get the minimum value of all rows in a column, use `min` instead
 	 *
-	 * @param mixed $x the first input field or number
-	 * @param mixed $y the first input field or number
-	 *
+	 * @param string|ILiteral|IParameter|IQueryFunction $x
+	 * @param string|ILiteral|IParameter|IQueryFunction $y
 	 * @return IQueryFunction
 	 * @since 18.0.0
 	 */
-- 
GitLab