Impala
Impalaistheopensource,nativeanalyticdatabaseforApacheHadoop.
|
Classes | |
enum | CompareMode |
Public Member Functions | |
Function (FunctionName name, Type[] argTypes, Type retType, boolean varArgs) | |
Function (FunctionName name, List< Type > args, Type retType, boolean varArgs) | |
FunctionName | getFunctionName () |
String | functionName () |
String | dbName () |
Type | getReturnType () |
Type[] | getArgs () |
int | getNumArgs () |
HdfsUri | getLocation () |
TFunctionBinaryType | getBinaryType () |
boolean | hasVarArgs () |
boolean | userVisible () |
Type | getVarArgsType () |
void | setName (FunctionName name) |
void | setLocation (HdfsUri loc) |
void | setBinaryType (TFunctionBinaryType type) |
void | setHasVarArgs (boolean v) |
void | setUserVisible (boolean b) |
String | signatureString () |
boolean | equals (Object o) |
boolean | compare (Function other, CompareMode mode) |
Function | promoteCharsToStrings () |
Function | selectClosestSuperType (List< Function > candidates) |
TCatalogObjectType | getCatalogObjectType () |
long | getCatalogVersion () |
void | setCatalogVersion (long newVersion) |
String | getName () |
TFunction | toThrift () |
boolean | isLoaded () |
String | lookupSymbol (String symbol, TSymbolType symbolType, Type retArgType, boolean hasVarArgs, Type...argTypes) throws AnalysisException |
String | lookupSymbol (String symbol, TSymbolType symbolType) throws AnalysisException |
Static Public Member Functions | |
static Function | fromThrift (TFunction fn) |
static String | getUdfType (Type t) |
Private Member Functions | |
boolean | isSuperTypeOf (Function other) |
boolean | isIdentical (Function o) |
boolean | isIndistinguishable (Function o) |
Private Attributes | |
FunctionName | name_ |
final Type | retType_ |
Type[] | argTypes_ |
boolean | hasVarArgs_ |
boolean | userVisible_ |
HdfsUri | location_ |
TFunctionBinaryType | binaryType_ |
long | catalogVersion_ = Catalog.INITIAL_CATALOG_VERSION |
Base class for all functions.
Definition at line 41 of file Function.java.
|
inline |
Definition at line 92 of file Function.java.
References com.cloudera.impala.catalog.Function.argTypes_, and impala.name.
Referenced by com.cloudera.impala.catalog.Function.fromThrift(), and com.cloudera.impala.catalog.Function.promoteCharsToStrings().
|
inline |
Definition at line 105 of file Function.java.
References com.cloudera.impala.catalog.Function.argTypes_, and impala.name.
|
inline |
Definition at line 157 of file Function.java.
References com.cloudera.impala.catalog.Function.isIdentical(), com.cloudera.impala.catalog.Function.isIndistinguishable(), and com.cloudera.impala.catalog.Function.isSuperTypeOf().
Referenced by com.cloudera.impala.catalog.Function.equals().
|
inline |
|
inline |
Definition at line 151 of file Function.java.
References com.cloudera.impala.catalog.Function.compare(), and com.cloudera.impala.catalog.Function.CompareMode.IS_IDENTICAL.
|
inlinestatic |
Definition at line 308 of file Function.java.
References com.cloudera.impala.analysis.FunctionName.fromThrift(), com.cloudera.impala.catalog.Type.fromThrift(), and com.cloudera.impala.catalog.Function.Function().
|
inline |
Definition at line 116 of file Function.java.
Referenced by com.cloudera.impala.service.MetadataOp.createFunctionResultRow(), and com.cloudera.impala.catalog.Db.removeFunction().
|
inline |
Definition at line 119 of file Function.java.
References com.cloudera.impala.catalog.Function.argTypes_.
Referenced by com.cloudera.impala.catalog.ScalarFunction.createBuiltin().
|
inline |
Definition at line 123 of file Function.java.
References com.cloudera.impala.catalog.Function.binaryType_.
Referenced by com.cloudera.impala.analysis.FunctionCallExpr.analyze().
|
inline |
Implements com.cloudera.impala.catalog.CatalogObject.
Definition at line 283 of file Function.java.
|
inline |
Implements com.cloudera.impala.catalog.CatalogObject.
Definition at line 286 of file Function.java.
References com.cloudera.impala.catalog.Function.catalogVersion_.
Referenced by com.cloudera.impala.catalog.ImpaladCatalog.addFunction(), and com.cloudera.impala.catalog.ImpaladCatalog.removeFunction().
|
inline |
Definition at line 115 of file Function.java.
References com.cloudera.impala.catalog.Function.name_.
Referenced by com.cloudera.impala.catalog.CatalogServiceCatalog.addFunction(), and com.cloudera.impala.catalog.Function.getName().
|
inline |
Definition at line 122 of file Function.java.
References com.cloudera.impala.catalog.Function.location_.
|
inline |
Implements com.cloudera.impala.catalog.CatalogObject.
Definition at line 292 of file Function.java.
References com.cloudera.impala.catalog.Function.getFunctionName().
|
inline |
Definition at line 121 of file Function.java.
Referenced by com.cloudera.impala.analysis.CreateUdaStmt.analyze(), com.cloudera.impala.catalog.Function.isIndistinguishable(), and com.cloudera.impala.analysis.Expr.treeToThriftHelper().
|
inline |
Definition at line 118 of file Function.java.
References com.cloudera.impala.catalog.Function.retType_.
Referenced by com.cloudera.impala.analysis.CreateUdaStmt.analyze(), com.cloudera.impala.catalog.AggregateFunction.toThrift(), and com.cloudera.impala.catalog.Function.toThrift().
|
inlinestatic |
Definition at line 401 of file Function.java.
References com.cloudera.impala.catalog.Type.getPrimitiveType().
|
inline |
Definition at line 126 of file Function.java.
References com.cloudera.impala.catalog.Function.argTypes_, com.cloudera.impala.catalog.Function.hasVarArgs_, and com.cloudera.impala.catalog.Type.INVALID.
Referenced by com.cloudera.impala.catalog.Function.isIndistinguishable().
|
inline |
Definition at line 124 of file Function.java.
References com.cloudera.impala.catalog.Function.hasVarArgs_.
Referenced by com.cloudera.impala.analysis.CreateUdaStmt.analyze(), com.cloudera.impala.catalog.Function.lookupSymbol(), and com.cloudera.impala.analysis.Expr.treeToThriftHelper().
|
inlineprivate |
Definition at line 226 of file Function.java.
References com.cloudera.impala.catalog.Function.argTypes_, com.cloudera.impala.analysis.FunctionName.equals(), com.cloudera.impala.catalog.Function.hasVarArgs_, com.cloudera.impala.catalog.Type.matchesType(), and com.cloudera.impala.catalog.Function.name_.
Referenced by com.cloudera.impala.catalog.Function.compare().
|
inlineprivate |
Definition at line 236 of file Function.java.
References com.cloudera.impala.catalog.Function.argTypes_, com.cloudera.impala.analysis.FunctionName.equals(), com.cloudera.impala.catalog.Function.getNumArgs(), com.cloudera.impala.catalog.Function.getVarArgsType(), com.cloudera.impala.catalog.Function.hasVarArgs_, com.cloudera.impala.catalog.Type.isNull(), com.cloudera.impala.catalog.Type.matchesType(), and com.cloudera.impala.catalog.Function.name_.
Referenced by com.cloudera.impala.catalog.Function.compare(), and com.cloudera.impala.catalog.Function.selectClosestSuperType().
|
inline |
Implements com.cloudera.impala.catalog.CatalogObject.
Definition at line 342 of file Function.java.
|
inlineprivate |
Returns true if 'this' is a supertype of 'other'. Each argument in other must be implicitly castable to the matching argument in this. TODO: look into how we resolve implicitly castable functions. Is there a rule for "most" compatible or maybe return an error if it is ambiguous?
Definition at line 173 of file Function.java.
References com.cloudera.impala.catalog.Function.argTypes_, com.cloudera.impala.analysis.FunctionName.equals(), com.cloudera.impala.catalog.Function.hasVarArgs_, com.cloudera.impala.catalog.Type.isImplicitlyCastable(), com.cloudera.impala.catalog.Type.matchesType(), and com.cloudera.impala.catalog.Function.name_.
Referenced by com.cloudera.impala.catalog.Function.compare().
|
inline |
Definition at line 348 of file Function.java.
References com.cloudera.impala.catalog.Function.binaryType_, com.cloudera.impala.analysis.HdfsUri.getLocation(), com.cloudera.impala.catalog.Function.hasVarArgs(), and com.cloudera.impala.catalog.Function.location_.
Referenced by com.cloudera.impala.catalog.Function.lookupSymbol().
|
inline |
Definition at line 394 of file Function.java.
References com.cloudera.impala.catalog.Function.lookupSymbol().
|
inline |
Converts any CHAR arguments to be STRING arguments
Definition at line 200 of file Function.java.
References com.cloudera.impala.catalog.PrimitiveType.CHAR, com.cloudera.impala.catalog.Function.Function(), com.cloudera.impala.catalog.Function.hasVarArgs_, com.cloudera.impala.catalog.Function.name_, com.cloudera.impala.catalog.Function.retType_, and com.cloudera.impala.catalog.Type.STRING.
Referenced by com.cloudera.impala.catalog.Function.selectClosestSuperType().
|
inline |
Given a list of functions which are a super type of this function, select the best match. This is the one which requires the fewest type promotions.
Definition at line 212 of file Function.java.
References com.cloudera.impala.catalog.Function.isIndistinguishable(), and com.cloudera.impala.catalog.Function.promoteCharsToStrings().
|
inline |
Definition at line 134 of file Function.java.
References com.cloudera.impala.catalog.Function.binaryType_.
|
inline |
Implements com.cloudera.impala.catalog.CatalogObject.
Definition at line 289 of file Function.java.
References com.cloudera.impala.catalog.Function.catalogVersion_.
|
inline |
Definition at line 135 of file Function.java.
References com.cloudera.impala.catalog.Function.hasVarArgs_.
|
inline |
Definition at line 133 of file Function.java.
References com.cloudera.impala.catalog.Function.location_.
Referenced by com.cloudera.impala.catalog.AggregateFunction.AggregateFunction(), and com.cloudera.impala.catalog.ScalarFunction.ScalarFunction().
|
inline |
Definition at line 132 of file Function.java.
References impala.name, and com.cloudera.impala.catalog.Function.name_.
|
inline |
Definition at line 136 of file Function.java.
References com.cloudera.impala.catalog.Function.userVisible_.
|
inline |
Definition at line 140 of file Function.java.
References com.cloudera.impala.catalog.Function.argTypes_, and com.cloudera.impala.catalog.Function.hasVarArgs_.
Referenced by com.cloudera.impala.analysis.CreateFunctionStmtBase.analyze(), com.cloudera.impala.service.MetadataOp.createFunctionResultRow(), com.cloudera.impala.service.CatalogOpExecutor.dropFunction(), com.cloudera.impala.service.Frontend.getFunctions(), and com.cloudera.impala.catalog.Function.toThrift().
|
inline |
Definition at line 294 of file Function.java.
References com.cloudera.impala.catalog.Function.argTypes_, com.cloudera.impala.catalog.Function.binaryType_, com.cloudera.impala.catalog.Function.getReturnType(), com.cloudera.impala.catalog.Function.hasVarArgs_, com.cloudera.impala.catalog.Function.location_, and com.cloudera.impala.catalog.Function.signatureString().
Referenced by com.cloudera.impala.analysis.CreateFunctionStmtBase.toThrift().
|
inline |
Definition at line 125 of file Function.java.
References com.cloudera.impala.catalog.Function.userVisible_.
Referenced by com.cloudera.impala.analysis.FunctionCallExpr.analyze(), and com.cloudera.impala.catalog.ScalarFunction.createBuiltin().
|
private |
Definition at line 75 of file Function.java.
Referenced by com.cloudera.impala.catalog.Function.Function(), com.cloudera.impala.catalog.Function.getArgs(), com.cloudera.impala.catalog.Function.getVarArgsType(), com.cloudera.impala.catalog.Function.isIdentical(), com.cloudera.impala.catalog.Function.isIndistinguishable(), com.cloudera.impala.catalog.Function.isSuperTypeOf(), com.cloudera.impala.catalog.Function.signatureString(), and com.cloudera.impala.catalog.Function.toThrift().
|
private |
Definition at line 89 of file Function.java.
Referenced by com.cloudera.impala.catalog.Function.getBinaryType(), com.cloudera.impala.catalog.Function.lookupSymbol(), com.cloudera.impala.catalog.Function.setBinaryType(), and com.cloudera.impala.catalog.Function.toThrift().
|
private |
Definition at line 90 of file Function.java.
Referenced by com.cloudera.impala.catalog.Function.getCatalogVersion(), and com.cloudera.impala.catalog.Function.setCatalogVersion().
|
private |
Definition at line 79 of file Function.java.
Referenced by com.cloudera.impala.catalog.Function.getVarArgsType(), com.cloudera.impala.catalog.Function.hasVarArgs(), com.cloudera.impala.catalog.Function.isIdentical(), com.cloudera.impala.catalog.Function.isIndistinguishable(), com.cloudera.impala.catalog.Function.isSuperTypeOf(), com.cloudera.impala.catalog.Function.promoteCharsToStrings(), com.cloudera.impala.catalog.Function.setHasVarArgs(), com.cloudera.impala.catalog.Function.signatureString(), and com.cloudera.impala.catalog.Function.toThrift().
|
private |
Definition at line 88 of file Function.java.
Referenced by com.cloudera.impala.catalog.Function.getLocation(), com.cloudera.impala.catalog.Function.lookupSymbol(), com.cloudera.impala.catalog.Function.setLocation(), and com.cloudera.impala.catalog.Function.toThrift().
|
private |
Definition at line 71 of file Function.java.
Referenced by com.cloudera.impala.catalog.Function.getFunctionName(), com.cloudera.impala.catalog.Function.isIdentical(), com.cloudera.impala.catalog.Function.isIndistinguishable(), com.cloudera.impala.catalog.Function.isSuperTypeOf(), com.cloudera.impala.catalog.Function.promoteCharsToStrings(), and com.cloudera.impala.catalog.Function.setName().
|
private |
Definition at line 73 of file Function.java.
Referenced by com.cloudera.impala.catalog.Function.getReturnType(), and com.cloudera.impala.catalog.Function.promoteCharsToStrings().
|
private |
Definition at line 84 of file Function.java.
Referenced by com.cloudera.impala.catalog.Function.setUserVisible(), and com.cloudera.impala.catalog.Function.userVisible().