|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Resolver
A Resolver
converts a function name, invocation type, and set
of arguments into a FunDef
.
Method Summary | |
---|---|
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,
int[] conversionCount)
Given a particular set of arguments the function is applied to, returns the correct overloaded form of the function. |
Method Detail |
---|
String getName()
String getDescription()
Syntax getSyntax()
FunDef resolve(Exp[] args, Validator validator, int[] conversionCount)
The method must increment conversionCount
argument 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
- ValidatorconversionCount
- This argument must be an int
array
with a single element; in effect, it is an in/out parameter. It
The method increments the count every time it performs a conversion.
boolean requiresExpression(int k)
false
if any of the variants of this resolver
allows a set as its k
th 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()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |