|
|||||||||
| 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.
| Nested Class Summary | |
|---|---|
static interface |
Resolver.Conversion
Description of an implicit conversion that occurred while resolving an operator call. |
| 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,
List<Resolver.Conversion> conversions)
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,
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()
|
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||