Register a skill with validation If a validator is set, the skill must pass validation before registration. Returns an error if validation fails.
(
&self,
skill: Arc<Skill>,
)
| 65 | /// If a validator is set, the skill must pass validation before registration. |
| 66 | /// Returns an error if validation fails. |
| 67 | pub fn register( |
| 68 | &self, |
| 69 | skill: Arc<Skill>, |
| 70 | ) -> Result<(), super::validator::SkillValidationError> { |
| 71 | // Run validator if set |
| 72 | if let Some(ref validator) = *self.validator.read().unwrap() { |
| 73 | validator.validate(&skill)?; |
| 74 | } |
| 75 | self.register_unchecked(skill); |
| 76 | Ok(()) |
| 77 | } |
| 78 | |
| 79 | /// Register a skill without validation. |
| 80 | /// |