ligen_python_parser/parser/
validator.rs

1use crate::{prelude::*, function::method::validator::MethodValidator, interface::validator::InterfaceValidator};
2use ligen::{ir::Library, parser::ParserConfig};
3use crate::types::type_::TypeValidator;
4
5#[derive(Default)]
6pub struct LibraryValidator {
7    _type_validator: TypeValidator,
8    _method_validator: MethodValidator,
9    _interface_validator: InterfaceValidator
10}
11
12impl LibraryValidator {
13    pub fn new() -> Self {
14        Default::default()
15    }
16}
17
18impl LibraryValidator {
19    pub fn validate(&self, _library: &mut Library, _config: &ParserConfig) -> Result<()> {
20        // library.iter_type::<Type>().for_each(|type_| {
21        //     self.type_validator.validate(type_, config).unwrap();
22        // });
23        // library.iter_type_mut::<Interface>().for_each(|interface| {
24        //     self.interface_validator.validate(interface, config).unwrap();
25        // });
26        // library.iter_type_mut::<Method>().for_each(|method| {
27        //     self.method_validator.validate(method, config).unwrap();
28        // });
29        Ok(())
30    }
31}