risingwave_sqlparser/ast/
analyze.rs

1use std::fmt::Display;
2
3use crate::ast::ObjectName;
4
5#[derive(Debug, PartialEq, Eq, Clone, Hash)]
6pub enum AnalyzeTarget {
7    Id(u32),
8    Table(ObjectName),
9    MaterializedView(ObjectName),
10    Index(ObjectName),
11    Sink(ObjectName),
12}
13
14impl Display for AnalyzeTarget {
15    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
16        match self {
17            AnalyzeTarget::Id(id) => write!(f, "ID {}", id),
18            AnalyzeTarget::Table(name) => write!(f, "TABLE {}", name),
19            AnalyzeTarget::MaterializedView(name) => write!(f, "MATERIALIZED VIEW {}", name),
20            AnalyzeTarget::Index(name) => write!(f, "INDEX {}", name),
21            AnalyzeTarget::Sink(name) => write!(f, "SINK {}", name),
22        }
23    }
24}