public interface Resolver
Resolver converts a function name, invocation type, and set
 of arguments into a FunDef.| Modifier and Type | Interface and Description | 
|---|---|
static interface  | 
Resolver.Conversion
Description of an implicit conversion that occurred while resolving an
 operator call. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
String | 
getDescription()
Returns the description of the function or operator. 
 | 
FunDef | 
getFunDef()
Returns a representative example of the function which this Resolver
 can produce, for purposes of describing the function set. 
 | 
String | 
getName()
Returns the name of the function or operator. 
 | 
String[] | 
getReservedWords()
Returns an array of symbolic constants which can appear as arguments
 to this function. 
 | 
String | 
getSignature()
Returns a string describing the syntax of this function, for example 
 | 
Syntax | 
getSyntax()
Returns the syntax with which the function or operator was invoked. 
 | 
boolean | 
requiresExpression(int k)
Returns whether a particular argument must be a scalar expression. 
 | 
FunDef | 
resolve(Exp[] args,
       Validator validator,
       List<Resolver.Conversion> conversions)
Given a particular set of arguments the function is applied to, returns
 the correct overloaded form of the function. 
 | 
String getName()
String getDescription()
Syntax getSyntax()
FunDef resolve(Exp[] args, Validator validator, List<Resolver.Conversion> conversions)
The method adds an item to conversions every
 time it performs an implicit type-conversion. If there are several
 candidate functions with the same signature, the validator will choose
 the one which used the fewest implicit conversions.
args - Expressions which this function call is applied to.validator - Validatorconversions - List of implicit conversions performed (out)boolean requiresExpression(int k)
false if any of the variants of this resolver
 allows a set as its kth argument; true otherwise.String[] getReservedWords()
For example, the DrilldownMember may take the symbol
 RECURSIVE as an argument. Most functions do not define
 any symbolic constants.
String getSignature()
StrToSet() FunDef getFunDef()
Copyright © 2017 Hitachi Vantara. All rights reserved.