Returns an analyzed clone of 'this' with exprs substituted according to smap. Removes implicit casts and analysis state while cloning/substituting exprs within this tree, such that the returned result has minimal implicit casts and types. Expects the analysis of the post-substitution expr to succeed
(ExprSubstitutionMap smap, Analyzer analyzer,
boolean preserveRootType)
| 1177 | * the type of 'this'. |
| 1178 | */ |
| 1179 | public Expr substitute(ExprSubstitutionMap smap, Analyzer analyzer, |
| 1180 | boolean preserveRootType) { |
| 1181 | try { |
| 1182 | return trySubstitute(smap, analyzer, preserveRootType); |
| 1183 | } catch (Exception e) { |
| 1184 | throw new IllegalStateException("Failed analysis after expr substitution.", e); |
| 1185 | } |
| 1186 | } |
| 1187 | |
| 1188 | public static List<Expr> trySubstituteList(Iterable<? extends Expr> exprs, |
| 1189 | ExprSubstitutionMap smap, Analyzer analyzer, boolean preserveRootTypes) |
no test coverage detected