Package mondrian.olap.fun
Class CacheFunDef
- java.lang.Object
-
- org.eigenbase.xom.XMLUtil
-
- org.eigenbase.xom.XOMUtil
-
- mondrian.olap.Util
-
- mondrian.olap.fun.FunUtil
-
- mondrian.olap.fun.FunDefBase
-
- mondrian.olap.fun.CacheFunDef
-
- All Implemented Interfaces:
FunDef
public class CacheFunDef extends FunDefBase
Definition of theCache
system function, which is smart enough to evaluate its argument only once.- Since:
- 2005/8/14
- Author:
- jhyde
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CacheFunDef.CacheFunResolver
-
Nested classes/interfaces inherited from class mondrian.olap.fun.FunUtil
FunUtil.DescendingValueComparator, FunUtil.Flag, FunUtil.ObjIntPair<T>, FunUtil.OrderKey, FunUtil.Quicksorter<T>, FunUtil.SetWrapper, FunUtil.SortKeySpec, FunUtil.TupleExpMemoComparator
-
Nested classes/interfaces inherited from class mondrian.olap.Util
Util.AbstractFlatList<T>, Util.ByteMatcher, Util.ErrorCellValue, Util.Flat2List<T>, Util.Flat3List<T>, Util.Functor1<RT,PT>, Util.GcIterator<T>, Util.MemoryInfo, Util.PropertyList, Util.SqlNullSafeComparator
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static java.lang.String
NAME
(package private) static CacheFunDef.CacheFunResolver
Resolver
-
Fields inherited from class mondrian.olap.fun.FunDefBase
flags, parameterCategories, returnCategory, signature
-
Fields inherited from class mondrian.olap.fun.FunUtil
BooleanNull, DoubleEmpty, DoubleNull, emptyStringArray, IntegerNull, NullMember
-
Fields inherited from class mondrian.olap.Util
DEBUG, EmptyValue, IBM_JVM, JdbcVersion, JVM_INSTANCE_UUID, nl, nullValue, Retrowoven
-
-
Constructor Summary
Constructors Constructor Description CacheFunDef(java.lang.String name, java.lang.String signature, java.lang.String description, Syntax syntax, int category, Type type)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Calc
compileCall(ResolvedFunCall call, ExpCompiler compiler)
Converts a call to this function into executable objects.void
unparse(Exp[] args, java.io.PrintWriter pw)
Converts a function call into MDX source code.-
Methods inherited from class mondrian.olap.fun.FunDefBase
castType, createCall, getDescription, getName, getParameterCategories, getResultType, getReturnCategory, getSignature, getSyntax, validateArg
-
Methods inherited from class mondrian.olap.fun.FunUtil
addMembers, addMembers, addUnique, ancestor, appendTuple, avg, box, box, checkCompatible, checkIterListResultStyles, checkListResultStyles, compareHierarchically, compareSiblingMembers, compareValues, compareValues, correlation, count, cousin, covariance, createDummyFunDef, decodeCategory, decodeParameterCategories, decodeReturnCategory, decodeSyntacticType, equalTuple, evaluateMembers, evaluateSet, evaluateSet, evaluateTuples, getDimensionDefaultHierarchy, getLiteralArg, getLiteralArg, getNonEmptyLevelMembers, getNonEmptyMemberChildren, getNonEmptyMemberChildrenWithDetails, hierarchizeMemberList, hierarchizeTupleList, hierarchyMembers, isAncestorOf, levelMembers, makeNullMember, makeNullTuple, max, memberRange, min, newEvalException, newEvalException, newEvalException, parseMember, parseMemberList, parseTuple, parseTupleList, partiallySortMembers, partiallySortTuples, partialSort, percentile, periodsToDate, quartile, removeCalculatedMembers, removeCalculatedMembers, resolveFunArgs, sortMembers, sortMembers, sortTuples, sortTuples, stablePartialSort, stablePartialSort, stablePartialSortArray, stablePartialSortJulian, stablePartialSortMarc, stablePartialSortPedro, stdev, sum, sumDouble, sumDouble, toPercent, tupleContainsNullMember, tupleContainsNullMember, var, worthCaching
-
Methods inherited from class mondrian.olap.Util
addDatabaseTime, addLevelCalculatedMembers, append, appendArrays, areOccurencesEqual, assertPostcondition, assertPostcondition, assertPrecondition, assertPrecondition, assertTrue, assertTrue, badValue, binarySearch, bitSetBetween, camelToUpper, canCast, cancelStatement, caseSensitiveCompareName, cast, cast, castToIterable, checkCJResultLimit, close, commaList, compare, compareIntegers, compareKey, compareName, compileScript, convert, convert, convertOlap4jConnectStringToNativeMondrian, convertStackToString, copyOf, copyOf, copyOf, copyOf, copyOf, createExpr, createRandom, createRootRole, createSimpleValidator, createUdf, dbTimeMillis, deprecated, deprecated, digestMd5, digestSha256, equal, equalName, equals, equals, falseFunctor, filter, flatList, flatList, flatListCopy, generateUuidString, genericArray, getAnnotation, getClosestResource, getDimensionCube, getErrorMessage, getErrorMessage, getExecutorService, getFirstDescendantOnLevel, getMatchingCause, getMemberOrdinalInParent, getMemoryInfo, getScheduledExecutorService, hash, hash, hashArray, identityFunctor, implode, intersect, isBlank, isEmpty, isNull, isSorted, isValidProperty, last, lookup, lookup, lookup, lookup, lookup, lookupCompound, lookupCompound, lookupHierarchyLevel, lookupHierarchyRootMember, lookupHierarchyRootMember, lookupProperty, makeBigDecimalFromDouble, makeFqName, makeFqName, makeFqName, matches, matches, mdxEncodeString, needToImplement, newElementNotFoundException, newError, newError, newIdentityHashSet, newIdentityHashSetFake, newInternal, newInternal, newTimer, nonDbTimeMillis, normalizeName, only, parseCommaList, parseConnectString, parseIdentifier, parseInterval, parseLocale, printMemory, printMemory, quoteForMdx, quoteForMdx, quoteJavaString, quoteMdxIdentifier, quoteMdxIdentifier, quoteMdxIdentifier, quoteMdxIdentifier, quotePattern, readFully, readFully, readURL, readURL, readURL, readVirtualFile, readVirtualFileAsString, replace, replace, replaceProperties, safeGet, singleQuoteString, singleQuoteString, sort, sort, threadLocalRemove, toMap, toNullValuesMap, toOlap4j, toOlap4j, toOlap4j, toURL, trueFunctor, unexpected, uniquify, unparse, unparse, wildcardToRegexp
-
Methods inherited from class org.eigenbase.xom.XOMUtil
addChild, addChild, addChildren, addElement, concatenate, createDefaultParser, discard, discard, discard, discard, discard, discard, discard, discard, discard, getFirstInstance, wrapperToXml
-
Methods inherited from class org.eigenbase.xom.XMLUtil
getFirstTagName, printAtt, printAtt, printAtt, printAtt, printPCDATA, printPCDATA, printPCDATA, quoteAtt, quoteAtt, quoteAtt, quoteAtt, quotePCDATA, stringEncodeXML, stringHasXMLSpecials
-
-
-
-
Field Detail
-
NAME
static final java.lang.String NAME
- See Also:
- Constant Field Values
-
Resolver
static final CacheFunDef.CacheFunResolver Resolver
-
-
Method Detail
-
unparse
public void unparse(Exp[] args, java.io.PrintWriter pw)
Description copied from interface:FunDef
Converts a function call into MDX source code.- Specified by:
unparse
in interfaceFunDef
- Overrides:
unparse
in classFunDefBase
-
compileCall
public Calc compileCall(ResolvedFunCall call, ExpCompiler compiler)
Description copied from interface:FunDef
Converts a call to this function into executable objects.The result must implement the appropriate interface for the result type. For example, a function which returns an integer must return an object which implements
IntegerCalc
.- Specified by:
compileCall
in interfaceFunDef
- Overrides:
compileCall
in classFunDefBase
-
-