gluesql_core/query_builder/
error.rs1use {serde::Serialize, std::fmt::Debug, thiserror::Error};
2
3#[derive(Error, Serialize, Debug, PartialEq, Eq)]
4pub enum QueryBuilderError {
5 #[error("failed to parse numeric value: {0}")]
6 FailedToParseNumeric(String),
7
8 #[error("hash join executor can only be built as an execution plan")]
9 HashJoinExecutorRequiresPlan,
10
11 #[error("index_by can only be built as an execution plan")]
12 IndexByRequiresPlan,
13
14 #[error(
15 "projection expression label cannot be derived from a plan-only expression; use an explicit alias"
16 )]
17 ProjectionLabelRequiresAlias,
18
19 #[error("values_from requires at least one row")]
20 ValuesFromRequiresRows,
21
22 #[error("values_from row has {found} values but {expected} columns are declared")]
23 ValuesFromColumnCountMismatch { expected: usize, found: usize },
24}