MCPcopy Create free account
hub / github.com/MaterializeInc/materialize / visit_query_mut

Method visit_query_mut

src/sql/src/normalize.rs:202–218  ·  view source on GitHub ↗
(&mut self, query: &'ast mut Query<Aug>)

Source from the content-addressed store, hash-verified

200
201 impl<'ast> VisitMut<'ast, Aug> for QueryNormalizer {
202 fn visit_query_mut(&mut self, query: &'ast mut Query<Aug>) {
203 let n = self.ctes.len();
204 match &query.ctes {
205 CteBlock::Simple(ctes) => {
206 for cte in ctes.iter() {
207 self.ctes.push(cte.alias.name.clone());
208 }
209 }
210 CteBlock::MutuallyRecursive(MutRecBlock { options: _, ctes }) => {
211 for cte in ctes.iter() {
212 self.ctes.push(cte.name.clone());
213 }
214 }
215 }
216 visit_mut::visit_query_mut(self, query);
217 self.ctes.truncate(n);
218 }
219
220 fn visit_function_mut(&mut self, func: &'ast mut Function<Aug>) {
221 match &mut func.args {

Callers 1

create_statementFunction · 0.45

Calls 5

lenMethod · 0.45
iterMethod · 0.45
pushMethod · 0.45
cloneMethod · 0.45
truncateMethod · 0.45

Tested by

no test coverage detected