routee_compass/plugin/output/
output_plugin_error.rs

1use crate::plugin::input::InputField;
2
3#[derive(thiserror::Error, Debug)]
4pub enum OutputPluginError {
5    #[error("failure building input plugin: {0}")]
6    BuildFailed(String),
7    #[error("required query field '{0}' not found")]
8    MissingExpectedQueryField(InputField),
9    #[error("{0} provided without {1}")]
10    MissingQueryFieldPair(InputField, InputField),
11    #[error("required query field '{0}' is not of type {1}")]
12    QueryFieldHasInvalidType(InputField, String),
13    #[error("expected query to be a json object '{{}}' but found {0}")]
14    UnexpectedQueryStructure(String),
15    #[error("plugin experienced JSON error: {source}")]
16    JsonError {
17        #[from]
18        source: serde_json::Error,
19    },
20    #[error("failure running plugin: {0}")]
21    OutputPluginFailed(String),
22    #[error("unexpected error: {0}")]
23    InternalError(String),
24}