MCPcopy Create free account
hub / github.com/apache/impala / substituteImpl

Method substituteImpl

fe/src/main/java/org/apache/impala/analysis/Expr.java:1216–1224  ·  view source on GitHub ↗

Recursive method that performs the actual substitution for try/substitute() while removing implicit casts. The implicit cast removal is in the CastExpr class which overrides this method. Resets the analysis state in all non-SlotRef expressions. Exprs that have non-child exprs which should be affecte

(ExprSubstitutionMap smap, Analyzer analyzer)

Source from the content-addressed store, hash-verified

1214 * well.
1215 */
1216 protected Expr substituteImpl(ExprSubstitutionMap smap, Analyzer analyzer) {
1217 if (smap != null) {
1218 Expr substExpr = smap.get(this);
1219 if (substExpr != null) return substExpr.clone();
1220 }
1221 substituteImplOnChildren(smap, analyzer);
1222 resetAnalysisState();
1223 return this;
1224 }
1225
1226 protected final void substituteImplOnChildren(ExprSubstitutionMap smap,
1227 Analyzer analyzer) {

Callers 2

trySubstituteMethod · 0.95

Calls 4

cloneMethod · 0.95
resetAnalysisStateMethod · 0.95
getMethod · 0.65

Tested by

no test coverage detected