MCPcopy Create free account
hub / github.com/aiscriptdev/aiscript / validate

Method validate

aiscript-vm/src/ty/error.rs:51–73  ·  view source on GitHub ↗
(&self)

Source from the content-addressed store, hash-verified

49 }
50
51 pub fn validate(&self) -> Result<(), String> {
52 // Check for undeclared raised errors
53 for error in &self.raised_errors {
54 if !self.declared_errors.contains(error) {
55 return Err(format!(
56 "Error type '{}' is raised but not declared in function '{}'s signature",
57 error.name, self.function_name.lexeme
58 ));
59 }
60 }
61
62 // Check for unused declared errors
63 for error in &self.declared_errors {
64 if !self.raised_errors.contains(error) {
65 return Err(format!(
66 "Error type '{}' is declared but never raised in function '{}'",
67 error.name, self.function_name.lexeme
68 ));
69 }
70 }
71
72 Ok(())
73 }
74
75 pub fn has_error_types(&self) -> bool {
76 !self.declared_errors.is_empty()

Callers 2

validate_argsMethod · 0.45
validate_fieldMethod · 0.45

Calls 1

containsMethod · 0.80

Tested by

no test coverage detected