use std::fmt;
use crate::ValidationArgument;
#[derive(Clone, Copy, Eq, PartialEq)]
pub struct NamedValidationArgument<'a> {
name: &'a str,
value: ValidationArgument<'a>,
}
impl<'a> NamedValidationArgument<'a> {
#[must_use]
#[inline]
pub const fn new(name: &'a str, value: ValidationArgument<'a>) -> Self {
assert!(!name.is_empty(), "validator parameter name cannot be empty");
Self { name, value }
}
#[must_use]
#[inline]
pub const fn name(&self) -> &'a str {
self.name
}
#[must_use]
#[inline]
pub const fn value(&self) -> ValidationArgument<'a> {
self.value
}
}
impl fmt::Debug for NamedValidationArgument<'_> {
fn fmt(&self, formatter: &mut fmt::Formatter<'_>) -> fmt::Result {
formatter
.debug_struct("NamedValidationArgument")
.field("value", &self.value)
.finish()
}
}