kvlar_core/error.rs
1//! Error types for kvlar-core.
2
3use thiserror::Error;
4
5/// Errors that can occur during policy evaluation.
6#[derive(Debug, Error)]
7pub enum KvlarError {
8 /// A policy file could not be parsed.
9 #[error("failed to parse policy: {0}")]
10 PolicyParse(String),
11
12 /// A policy rule references an unknown action type.
13 #[error("unknown action type: {0}")]
14 UnknownActionType(String),
15
16 /// A policy condition is malformed.
17 #[error("invalid policy condition: {0}")]
18 InvalidCondition(String),
19
20 /// Serialization/deserialization error.
21 #[error("serialization error: {0}")]
22 Serialization(#[from] serde_json::Error),
23
24 /// YAML parsing error.
25 #[error("YAML parse error: {0}")]
26 YamlParse(#[from] serde_yaml::Error),
27}