webwire_cli/schema/
document.rs

1use std::collections::HashMap;
2
3use super::errors::ValidationError;
4use super::namespace::Namespace;
5
6#[derive(Default)]
7pub struct Document {
8    pub ns: Namespace,
9}
10
11impl Document {
12    pub fn from_idl<'a>(
13        idocs: impl Iterator<Item = &'a crate::idl::Document>,
14        builtin_types: &HashMap<String, String>,
15    ) -> Result<Self, ValidationError> {
16        Ok(Self {
17            ns: Namespace::from_idl(idocs.map(|idoc| &idoc.ns), builtin_types)?,
18        })
19    }
20}