jonahgao commented on code in PR #7568:
URL: https://github.com/apache/arrow-datafusion/pull/7568#discussion_r1329513069
##########
datafusion/expr/src/built_in_function.rs:
##########
@@ -1162,8 +1163,9 @@ impl BuiltinScalarFunction {
Signature::uniform(2, vec![Int64], self.volatility())
}
BuiltinScalarFunction::ArrowTypeof => Signature::any(1,
self.volatility()),
- BuiltinScalarFunction::Abs
- | BuiltinScalarFunction::Acos
+ BuiltinScalarFunction::Abs => Signature::any(1, self.volatility()),
Review Comment:
@alamb
In the function signature, I can’t find a way to declare the parameter type
as a generic decimal type that supports arbitrary precision and scale. Just
like this :
```rust
BuiltinScalarFunction::Abs => {
// Compilation failed
Signature::uniform(1, vec![Decimal128(_, _)], self.volatility())
}
```
If a function requires a decimal type as its parameter, we have to declare
it as an inexact `Any` type.
##########
datafusion/expr/src/built_in_function.rs:
##########
@@ -1162,8 +1163,9 @@ impl BuiltinScalarFunction {
Signature::uniform(2, vec![Int64], self.volatility())
}
BuiltinScalarFunction::ArrowTypeof => Signature::any(1,
self.volatility()),
- BuiltinScalarFunction::Abs
- | BuiltinScalarFunction::Acos
+ BuiltinScalarFunction::Abs => Signature::any(1, self.volatility()),
Review Comment:
@alamb
In the function signature, I can’t find a way to declare the parameter type
as a generic decimal type that supports arbitrary precision and scale. Just
like this :
```rust
BuiltinScalarFunction::Abs => {
// Compilation failed
Signature::uniform(1, vec![Decimal128(_, _)], self.volatility())
}
```
If a function requires a decimal type as its parameter, we have to declare
it as an inexact `Any` type.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]