[
https://issues.apache.org/jira/browse/CALCITE-529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vladimir Sitnikov updated CALCITE-529:
--------------------------------------
Description:
Motivation: Rex is simpler that linq4j.
For instance,
1) Sometimes it is easier to create a {{ProjectRel}} rather than lower the
expression to low-level linq4j
2) XXXToEnumerableRule are easier to accomplish via TableFunctionScan. This
allows to express the call via Rex and skip linq4j completely.
For example:
https://github.com/vlsi/mat-calcite-plugin/blob/master/MatCalcitePlugin/src/com/github/vlsi/mat/optiq/rules/InstanceAccessByClassIdRule.java#L43
The problem is to pass non-literal java object to enumerable/interpreter
conventions.
For enumerable the implementation can use stash. For interpreter it can use the
value as is, etc.
was:
Motivation: Rex is simpler that linq4j. For instance, sometimes it is easier to
create a {{ProjectRel}} rather than lower the expression to low-level linq4j.
For example:
https://github.com/vlsi/mat-calcite-plugin/blob/master/MatCalcitePlugin/src/com/github/vlsi/mat/optiq/rules/InstanceAccessByClassIdRule.java#L43
The problem is to pass non-literal java object to enumerable/interpreter
conventions.
For enumerable the implementation can use stash. For interpreter it can use the
value as is, etc.
> Allow to pass java object via rexBuilder.makeLiteral()
> ------------------------------------------------------
>
> Key: CALCITE-529
> URL: https://issues.apache.org/jira/browse/CALCITE-529
> Project: Calcite
> Issue Type: Bug
> Affects Versions: 1.0.0-incubating
> Reporter: Vladimir Sitnikov
> Assignee: Julian Hyde
> Labels: newbie
>
> Motivation: Rex is simpler that linq4j.
> For instance,
> 1) Sometimes it is easier to create a {{ProjectRel}} rather than lower the
> expression to low-level linq4j
> 2) XXXToEnumerableRule are easier to accomplish via TableFunctionScan. This
> allows to express the call via Rex and skip linq4j completely.
> For example:
> https://github.com/vlsi/mat-calcite-plugin/blob/master/MatCalcitePlugin/src/com/github/vlsi/mat/optiq/rules/InstanceAccessByClassIdRule.java#L43
> The problem is to pass non-literal java object to enumerable/interpreter
> conventions.
> For enumerable the implementation can use stash. For interpreter it can use
> the value as is, etc.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)