public interface FunctionContext
Information about the context in which a function is
evaluated. This information is passed to the
FunctionTyper associated with the function
to provide information necessary for performing
type checks.-
Method Summary
Modifier and TypeMethodDescriptiongetArgument(int i) Gets the specified argument.intGets the number of arguments passed to the function.getArgumentType(int i) Gets the datatype of the specified argument.getLabel()Gets the name of the function being evaluated.
-
Method Details
-
getLabel
String getLabel()Gets the name of the function being evaluated.- Returns:
- the name associated with the function
-
getArgumentCount
int getArgumentCount()Gets the number of arguments passed to the function.- Returns:
- the number of function arguments
-
getArgumentType
Gets the datatype of the specified argument.In the context passed to
FunctionTyper.computeUpperBound(FunctionContext), the returned type is the upper bound on the argument's type.In the context passed to
FunctionTyper.computeResultType(FunctionContext), the returned type is the actual type of the argument.- Parameters:
i- the index of the argument for which to get the type- Returns:
- the type of the argument. If the argument is not a subtype of
ScalarValuedFunction,nullis returned.
-
getArgument
Gets the specified argument.- Parameters:
i- the index of the argument to get- Returns:
- the argument
-