use super::{
ExecutableState, GroupByAllowed, GroupByApplied, HavingAllowed, JoinAllowed, LimitAllowed,
OffsetAllowed, OrderByAllowed, WhereAllowed,
};
#[derive(Debug, Clone, Copy, Default)]
pub struct SelectInitial;
#[derive(Debug, Clone, Copy, Default)]
pub struct SelectFromSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct SelectJoinSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct SelectWhereSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct SelectGroupSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct SelectOrderSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct SelectLimitSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct SelectOffsetSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct SelectSetOpSet;
impl ExecutableState for SelectFromSet {}
impl ExecutableState for SelectWhereSet {}
impl ExecutableState for SelectLimitSet {}
impl ExecutableState for SelectOffsetSet {}
impl ExecutableState for SelectOrderSet {}
impl ExecutableState for SelectGroupSet {}
impl ExecutableState for SelectJoinSet {}
impl ExecutableState for SelectSetOpSet {}
impl WhereAllowed for SelectFromSet {}
impl WhereAllowed for SelectJoinSet {}
impl GroupByAllowed for SelectFromSet {}
impl GroupByAllowed for SelectJoinSet {}
impl GroupByAllowed for SelectWhereSet {}
impl OrderByAllowed for SelectFromSet {}
impl OrderByAllowed for SelectJoinSet {}
impl OrderByAllowed for SelectWhereSet {}
impl OrderByAllowed for SelectGroupSet {}
impl OrderByAllowed for SelectSetOpSet {}
impl LimitAllowed for SelectFromSet {}
impl LimitAllowed for SelectJoinSet {}
impl LimitAllowed for SelectWhereSet {}
impl LimitAllowed for SelectGroupSet {}
impl LimitAllowed for SelectOrderSet {}
impl LimitAllowed for SelectSetOpSet {}
impl OffsetAllowed for SelectFromSet {}
impl OffsetAllowed for SelectLimitSet {}
impl OffsetAllowed for SelectSetOpSet {}
impl JoinAllowed for SelectFromSet {}
impl JoinAllowed for SelectJoinSet {}
impl HavingAllowed for SelectGroupSet {}
impl GroupByApplied for SelectGroupSet {}
impl GroupByApplied for SelectOrderSet {}
impl GroupByApplied for SelectLimitSet {}
impl GroupByApplied for SelectOffsetSet {}
impl GroupByApplied for SelectSetOpSet {}
#[doc(hidden)]
pub trait AsCteState {}
impl AsCteState for SelectFromSet {}
impl AsCteState for SelectJoinSet {}
impl AsCteState for SelectWhereSet {}
impl AsCteState for SelectGroupSet {}
impl AsCteState for SelectOrderSet {}
impl AsCteState for SelectLimitSet {}
impl AsCteState for SelectOffsetSet {}
#[derive(Debug, Clone, Copy, Default)]
pub struct InsertInitial;
#[derive(Debug, Clone, Copy, Default)]
pub struct InsertValuesSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct InsertReturningSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct InsertOnConflictSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct InsertDoUpdateSet;
impl ExecutableState for InsertValuesSet {}
impl ExecutableState for InsertReturningSet {}
impl ExecutableState for InsertOnConflictSet {}
impl ExecutableState for InsertDoUpdateSet {}
#[derive(Debug, Clone, Copy, Default)]
pub struct DeleteInitial;
#[derive(Debug, Clone, Copy, Default)]
pub struct DeleteWhereSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct DeleteReturningSet;
impl ExecutableState for DeleteInitial {}
impl ExecutableState for DeleteWhereSet {}
impl ExecutableState for DeleteReturningSet {}
#[derive(Debug, Clone, Copy, Default)]
pub struct UpdateInitial;
#[derive(Debug, Clone, Copy, Default)]
pub struct UpdateSetClauseSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct UpdateWhereSet;
#[derive(Debug, Clone, Copy, Default)]
pub struct UpdateReturningSet;
impl ExecutableState for UpdateSetClauseSet {}
impl ExecutableState for UpdateWhereSet {}
impl ExecutableState for UpdateReturningSet {}