Uses of Interface
net.hydromatic.morel.eval.Code
Packages that use Code
Package
Description
Validates programs (represented as
AstNode),
deduces their type, and compiles them into code that can be evaluated.Evaluates expressions.
Provides access to external data sources.
-
Uses of Code in net.hydromatic.morel.compile
Subinterfaces of Code in net.hydromatic.morel.compileModifier and TypeInterfaceDescription(package private) static interfaceExtension toCodethat can also provide a translation to relational algebra.Classes in net.hydromatic.morel.compile that implement CodeModifier and TypeClassDescriptionprivate static classA piece of code that is references another piece of code.private static classCode that implementsCompiler.compileMatchList(Context, List).Fields in net.hydromatic.morel.compile declared as CodeFields in net.hydromatic.morel.compile with type parameters of type CodeModifier and TypeFieldDescriptionprivate final ImmutablePairList<Core.Pat, Code> Compiler.MatchCode.patCodesMethods in net.hydromatic.morel.compile that return CodeModifier and TypeMethodDescriptionCompiler.compile(Compiler.Context cx, Core.Exp expression) final CodeCompiler.compile(Environment env, Core.Exp expression) protected CodeCompiler.compileApply(Compiler.Context cx, Core.Apply apply) CalciteCompiler.compileArg(Compiler.Context cx, Core.Exp expression) Compiler.compileArg(Compiler.Context cx, Core.Exp expression) Compiles the argument to "apply".private CodeCompiler.compileCall(Compiler.Context cx, Core.Literal fnLiteral, Core.Exp arg, Pos pos) private CodeCompiler.compileFieldName(Compiler.Context cx, Core.NamedPat idPat) protected CodeCalciteCompiler.compileFrom(Compiler.Context cx, Core.From from) protected CodeCompiler.compileFrom(Compiler.Context cx, Core.From from) private CodeCompiler.compileLet(Compiler.Context cx, Core.Let let) private CodeCompiler.compileLocal(Compiler.Context cx, Core.Local local) private CodeCompiler.compileMatchList(Compiler.Context cx, List<Core.Match> matchList) Compiles amatchexpression.Compiler.compileRow(Compiler.Context cx, Core.Exp expression) Compiles an expression that is evaluated once per row.protected CodeCalciteCompiler.finishCompileApply(Compiler.Context cx, Applicable fnValue, Code argCode, Type argType) protected CodeCalciteCompiler.finishCompileApply(Compiler.Context cx, Code fnCode, Code argCode, Type argType) protected CodeCompiler.finishCompileApply(Compiler.Context cx, Applicable fnValue, Code argCode, Type argType) protected CodeCompiler.finishCompileApply(Compiler.Context cx, Code fnCode, Code argCode, Type argType) protected CodeCalciteCompiler.finishCompileLet(Compiler.Context cx, List<Code> matchCodes_, Code resultCode_, Type resultType) protected CodeCompiler.finishCompileLet(Compiler.Context cx, List<Code> matchCodes, Code resultCode, Type resultType) (package private) CodeCalciteCompiler.toRel4(Environment env, Code code, Type type) Methods in net.hydromatic.morel.compile that return types with arguments of type CodeModifier and TypeMethodDescriptionCompiler.compileArgs(Compiler.Context cx, List<? extends Core.Exp> expressions) Compiles the tuple arguments to "apply".Compiler.compileRowMap(Compiler.Context cx, List<? extends Map.Entry<String, Core.Exp>> nameExps) Compiles a collection of expressions that are evaluated once per row.Methods in net.hydromatic.morel.compile with parameters of type CodeModifier and TypeMethodDescriptionprotected CodeCalciteCompiler.finishCompileApply(Compiler.Context cx, Applicable fnValue, Code argCode, Type argType) protected CodeCalciteCompiler.finishCompileApply(Compiler.Context cx, Code fnCode, Code argCode, Type argType) protected CodeCompiler.finishCompileApply(Compiler.Context cx, Applicable fnValue, Code argCode, Type argType) protected CodeCompiler.finishCompileApply(Compiler.Context cx, Code fnCode, Code argCode, Type argType) protected CodeCalciteCompiler.finishCompileLet(Compiler.Context cx, List<Code> matchCodes_, Code resultCode_, Type resultType) protected CodeCompiler.finishCompileLet(Compiler.Context cx, List<Code> matchCodes, Code resultCode, Type resultType) private voidCompiler.link(Map<Core.NamedPat, Compiler.LinkCode> linkCodes, Core.Pat pat, Code code) static CalciteCompiler.RelCodeCalciteCompiler.RelCode.of(Code code, Predicate<CalciteCompiler.RelContext> c) voidCalled when code is generated.voidvoid(package private) CodeCalciteCompiler.toRel4(Environment env, Code code, Type type) Method parameters in net.hydromatic.morel.compile with type arguments of type CodeModifier and TypeMethodDescription(package private) voidCompiler.compileDecl(Compiler.Context cx, Core.Decl decl, @Nullable Core.NamedPat skipPat, Set<Core.Exp> queriesToWrap, List<Code> matchCodes, List<Binding> bindings, List<Compiler.Action> actions) private voidCompiler.compileMatch(Compiler.Context cx, Core.Match match, BiConsumer<Core.Pat, Code> consumer) private voidCompiler.compileValDecl(Compiler.Context cx, Core.ValDecl valDecl, @Nullable Core.Pat skipPat, Set<Core.Exp> queriesToWrap, List<Code> matchCodes, List<Binding> bindings, List<Compiler.Action> actions) protected CodeCalciteCompiler.finishCompileLet(Compiler.Context cx, List<Code> matchCodes_, Code resultCode_, Type resultType) protected CodeCompiler.finishCompileLet(Compiler.Context cx, List<Code> matchCodes, Code resultCode, Type resultType) static TracerTracers.withOnPlan(Tracer tracer, Consumer<Code> consumer) Returns a tracer that performs the given action on code, then calls the underlying tracer.Constructor parameters in net.hydromatic.morel.compile with type arguments of type CodeModifierConstructorDescription(package private)MatchCode(ImmutablePairList<Core.Pat, Code> patCodes, Pos pos) -
Uses of Code in net.hydromatic.morel.eval
Classes in net.hydromatic.morel.eval that implement CodeModifier and TypeClassDescriptionprivate static classCode that implementsCodes.andAlso(Code, Code).private static classApplies anApplicableto aCode.private static classApplies anApplicable2to twoCodearguments.private static classApplies anApplicable3to threeCodearguments.(package private) static classprivate static classCode that implements a constant.(package private) static classCode that evaluates a query.private static classCode that retrieves the value of a variable from the environment.private static classCode that retrieves, as a tuple, the value of several variables from the environment.private static classCode that implementsCodes.let(List, Code)with one argument.private static classCode that implementsCodes.let(List, Code)with multiple arguments.private static classImplementation ofCodethat evaluates the current row ordinal.private static classImplementation ofCodethat increments the current row ordinal then calls anotherCode.private static classCode that implementsCodes.orElse(Code, Code).static classA code that evaluates expressions and creates a tuple with the results.(package private) static classFields in net.hydromatic.morel.eval declared as CodeModifier and TypeFieldDescriptionprivate final CodeCodes.ApplyCode.argCodefinal CodeCodes.ApplyCodeCode.argCodeprivate final CodeCodes.ApplyCode2.argCode0private final CodeCodes.ApplyCode3.argCode0private final CodeCodes.ApplyCode2.argCode1private final CodeCodes.ApplyCode3.argCode1private final CodeCodes.ApplyCode3.argCode2(package private) final CodeCodes.CollectRowSink.code(package private) final CodeCodes.OrderRowSink.codeprivate final CodeCodes.ScanRowSink.codefinal CodeCodes.WrapRelList.codeSession.codeThe plan of the previous command.private final CodeCodes.AndAlsoCode.code0private final CodeCodes.OrElseCode.code0private final CodeCodes.AndAlsoCode.code1private final CodeCodes.OrElseCode.code1(package private) final CodeCodes.ScanRowSink.conditionCode(package private) final CodeCodes.WhereRowSink.filterCodefinal CodeCodes.ApplyCodeCode.fnCode(package private) final CodeCodes.GroupRowSink.keyCodeprivate final CodeCodes.Let1Code.matchCodeprivate final CodeCodes.OrdinalIncCode.nextCodeprivate final CodeCodes.Let1Code.resultCodeprivate final CodeCodes.LetCode.resultCode(package private) final CodeCodes.SkipRowSink.skipCode(package private) final CodeCodes.TakeRowSink.takeCodeFields in net.hydromatic.morel.eval with type parameters of type CodeModifier and TypeFieldDescription(package private) final com.google.common.collect.ImmutableList<Code> Codes.SetRowSink.codesCodes.TupleCode.codesprivate final com.google.common.collect.ImmutableList<Code> Codes.YieldRowSink.codesprivate final com.google.common.collect.ImmutableList<Code> Codes.LetCode.matchCodesprivate final ImmutablePairList<Core.Pat, Code> Closure.patCodesA list of (pattern, code) pairs.Methods in net.hydromatic.morel.eval that return CodeModifier and TypeMethodDescriptionstatic CodeReturns a Code that evaluates "andalso".static CodeCodes.apply(Applicable fnValue, Code argCode) Generates the code for applying a function value to an argument.static CodeGenerates the code for applying a function (or function value) to an argument.static CodeCodes.apply2(Applicable2 fnValue, Code argCode0, Code argCode1) Generates the code for applying a function value to two arguments.static CodeCodes.apply3(Applicable3 fnValue, Code argCode0, Code argCode1, Code argCode2) Generates the code for applying a function value to three arguments.default CodeApplicable.asCode()Converts this Applicable to a Code that has similar effect (but is less efficient).static CodeReturns a Code that evaluates to the same value in all environments.static CodeCodes.from(Supplier<Codes.RowSink> rowSinkFactory) static CodeReturns a Code that returns the value of variable "name" in the current environment.static CodeReturns a Code that returns a tuple consisting of the values of variables "name0", ...static Codestatic Codestatic CodeCodes.ordinalGet(int[] ordinalSlots) static CodeCodes.ordinalInc(int[] ordinalSlots, Code nextCode) Helper forCodes.ordinalGet(int[]).static CodeReturns a Code that evaluates "orelse".static CodeRemoves wrappers, in particular the one due toCodes.wrapRelList(Code).static Codestatic CodeCodes.wrapRelList(Code code) Methods in net.hydromatic.morel.eval with parameters of type CodeModifier and TypeMethodDescriptionstatic ApplicableCodes.aggregate(Environment env0, Code aggregateCode, List<String> names, @Nullable Code argumentCode) static CodeReturns a Code that evaluates "andalso".static CodeCodes.apply(Applicable fnValue, Code argCode) Generates the code for applying a function value to an argument.static CodeGenerates the code for applying a function (or function value) to an argument.static CodeCodes.apply2(Applicable2 fnValue, Code argCode0, Code argCode1) Generates the code for applying a function value to two arguments.static CodeCodes.apply3(Applicable3 fnValue, Code argCode0, Code argCode1, Code argCode2) Generates the code for applying a function value to three arguments.static Codes.RowSinkCodes.collectRowSink(Code code) Creates aCodes.RowSinkto collect the results of afromexpression.static StringDescribes aCode.static Codes.RowSinkCodes.groupRowSink(Code keyCode, com.google.common.collect.ImmutableList<Applicable> aggregateCodes, com.google.common.collect.ImmutableList<String> inNames, com.google.common.collect.ImmutableList<String> keyNames, com.google.common.collect.ImmutableList<String> outNames, Codes.RowSink rowSink) Creates aCodes.RowSinkfor agroupstep.private static booleanCodes.ScanRowSink.isConstantTrue(Code code) static Codestatic Codes.RowSinkCodes.orderRowSink(Code code, Comparator comparator, Core.StepEnv env, Codes.RowSink rowSink) Creates aCodes.RowSinkfor anorderstep.static CodeCodes.ordinalInc(int[] ordinalSlots, Code nextCode) Helper forCodes.ordinalGet(int[]).static CodeReturns a Code that evaluates "orelse".static Codes.RowSinkCodes.scanRowSink(Op op, Core.Pat pat, Code code, Code conditionCode, Codes.RowSink rowSink) Creates aCodes.RowSinkfor ajoinstep.static Codes.RowSinkCodes.skipRowSink(Code skipCode, Codes.RowSink rowSink) Creates aCodes.RowSinkfor askipstep.static CodeRemoves wrappers, in particular the one due toCodes.wrapRelList(Code).static Codes.RowSinkCodes.takeRowSink(Code takeCode, Codes.RowSink rowSink) Creates aCodes.RowSinkfor atakestep.static Codes.RowSinkCodes.whereRowSink(Code filterCode, Codes.RowSink rowSink) Creates aCodes.RowSinkfor awherestep.static CodeCodes.wrapRelList(Code code) Method parameters in net.hydromatic.morel.eval with type arguments of type CodeModifier and TypeMethodDescriptionstatic Codes.RowSinkCodes.exceptRowSink(boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) Creates aCodes.RowSinkfor anexceptstep.static Codes.RowSinkCodes.intersectRowSink(boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) Creates aCodes.RowSinkfor anintersectstep.static Codestatic Codestatic Codestatic Codes.RowSinkCodes.unionRowSink(boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) static Codes.RowSinkCodes.yieldRowSink(Map<String, Code> yieldCodes, Codes.RowSink rowSink) Creates aCodes.RowSinkfor a non-terminalyieldstep.Constructors in net.hydromatic.morel.eval with parameters of type CodeModifierConstructorDescription(package private)AndAlsoCode(Code code0, Code code1) (package private)ApplyCode(Applicable fnValue, Code argCode) (package private)ApplyCode2(Applicable2 fnValue, Code argCode0, Code argCode1) (package private)ApplyCode3(Applicable3 fnValue, Code argCode0, Code argCode1, Code argCode2) (package private)ApplyCodeCode(Code fnCode, Code argCode) (package private)CollectRowSink(Code code) (package private)GroupRowSink(Code keyCode, com.google.common.collect.ImmutableList<Applicable> aggregateCodes, com.google.common.collect.ImmutableList<String> inNames, com.google.common.collect.ImmutableList<String> keyNames, com.google.common.collect.ImmutableList<String> outNames, Codes.RowSink rowSink) (package private)(package private)(package private)OrderRowSink(Code code, Comparator comparator, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) (package private)OrdinalIncCode(int[] ordinalSlots, Code nextCode) (package private)OrElseCode(Code code0, Code code1) (package private)ScanRowSink(Op op, Core.Pat pat, Code code, Code conditionCode, Codes.RowSink rowSink) (package private)SkipRowSink(Code skipCode, Codes.RowSink rowSink) (package private)TakeRowSink(Code takeCode, Codes.RowSink rowSink) (package private)WhereRowSink(Code filterCode, Codes.RowSink rowSink) (package private)WrapRelList(Code code) Constructor parameters in net.hydromatic.morel.eval with type arguments of type CodeModifierConstructorDescriptionNot a public API.(package private)ExceptAllRowSink(com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) (package private)ExceptDistinctRowSink(com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) (package private)IntersectAllRowSink(com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) (package private)IntersectDistinctRowSink(com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) (package private)(package private)SetRowSink(Op op, boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) private(package private)UnionRowSink(boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) -
Uses of Code in net.hydromatic.morel.foreign
Classes in net.hydromatic.morel.foreign that implement CodeModifier and TypeClassDescriptionprivate static classEvaluates a Calcite relational expression, converting it to Morel list typetype.Fields in net.hydromatic.morel.foreign declared as CodeModifier and TypeFieldDescription(package private) final CodeCalciteFunctions.MorelScalarFunction.Compiled.code(package private) final CodeCalciteFunctions.MorelTableFunction.Compiled.codeMethods in net.hydromatic.morel.foreign that return CodeModifier and TypeMethodDescriptionCalcite.code(Environment env, org.apache.calcite.rel.RelNode rel, Type type) Creates aCodethat evaluates a Calcite relational expression, converting it to Morel list typetype.Constructors in net.hydromatic.morel.foreign with parameters of type Code