funkresolver.java
来自「数据仓库展示程序」· Java 代码 · 共 56 行
JAVA
56 行
/*
// $Id: //open/mondrian/src/main/mondrian/olap/fun/FunkResolver.java#6 $
// This software is subject to the terms of the Common Public License
// Agreement, available at the following URL:
// http://www.opensource.org/licenses/cpl.html.
// (C) Copyright 2002-2005 Kana Software, Inc. and others.
// All Rights Reserved.
// You must accept the terms of that agreement to use this software.
//
// jhyde, 3 March, 2002
*/
package mondrian.olap.fun;
import mondrian.olap.Evaluator;
import mondrian.olap.Exp;
import mondrian.olap.FunDef;
/**
* A <code>FunkResolver</code> resolves a function with a finite set of
* parameter combinations to a single function.
*
* @author jhyde
* @since 3 March, 2002
* @version $Id: //open/mondrian/src/main/mondrian/olap/fun/FunkResolver.java#6 $
**/
class FunkResolver extends MultiResolver {
private final Funk funk;
FunkResolver(
String name, String signature, String description,
String[] signatures, Funk funk) {
super(name, signature, description, signatures);
this.funk = funk;
}
// public void addTests(TestSuite suite, Pattern pattern) {
// super.addTests(suite, pattern);
// funk.addTests(suite, pattern);
// }
Funk getFunk() {
return funk;
}
protected FunDef createFunDef(Exp[] args, FunDef dummyFunDef) {
return new FunDefBase(this, dummyFunDef.getReturnCategory(),
dummyFunDef.getParameterTypes()) {
public Object evaluate(Evaluator evaluator, Exp[] args) {
return funk.evaluate(evaluator, args);
}
};
}
}
// End FunkResolver.java
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?