trait BoundFunction extends Function
Represents a function that is bound to an input type.
- Annotations
- @Evolving()
- Since
3.2.0
- Alphabetic
- By Inheritance
- BoundFunction
- Function
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
inputTypes(): Array[DataType]
Returns the required
data typesof the input values to this function.Returns the required
data typesof the input values to this function.If the types returned differ from the types passed to
UnboundFunction#bind(StructType), Spark will cast input values to the required data types. This allows implementations to delegate input value casting to Spark.- returns
an array of input value data types
-
abstract
def
name(): String
A name to identify this function.
A name to identify this function. Implementations should provide a meaningful name, like the database and function name from the catalog.
- Definition Classes
- Function
-
abstract
def
resultType(): DataType
Returns the
data typeof values produced by this function.Returns the
data typeof values produced by this function.For example, a "plus" function may return
IntegerTypewhen it is bound to arguments that are alsoIntegerType.- returns
a data type for values produced by this function
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
canonicalName(): String
Returns the canonical name of this function, used to determine if functions are equivalent.
Returns the canonical name of this function, used to determine if functions are equivalent.
The canonical name is used to determine whether two functions are the same when loaded by different catalogs. For example, the same catalog implementation may be used for by two environments, "prod" and "test". Functions produced by the catalogs may be equivalent, but loaded using different names, like "test.func_name" and "prod.func_name".
Names returned by this function should be unique and unlikely to conflict with similar functions in other catalogs. For example, many catalogs may define a "bucket" function with a different implementation. Adding context, like "com.mycompany.bucket(string)", is recommended to avoid unintentional collisions.
- returns
a canonical name for this function
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
isDeterministic(): Boolean
Returns whether this function result is deterministic.
Returns whether this function result is deterministic.
By default, functions are assumed to be deterministic. Functions that are not deterministic should override this method so that Spark can ensure the function runs only once for a given input.
- returns
true if this function is deterministic, false otherwise
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isResultNullable(): Boolean
Returns whether the values produced by this function may be null.
Returns whether the values produced by this function may be null.
For example, a "plus" function may return false when it is bound to arguments that are always non-null, but true when either argument may be null.
- returns
true if values produced by this function may be null, false otherwise
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()