1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
//! AST of schema declarations
use crate::ast::{algorithm::*, entity::*, types::*};
/// Parsed result of EXPRESS's SCHEMA
#[derive(Debug, Clone, PartialEq)]
pub struct Schema {
pub name: String,
pub entities: Vec<Entity>,
pub types: Vec<TypeDecl>,
pub functions: Vec<Function>,
pub procedures: Vec<Procedure>,
pub rules: Vec<Rule>,
pub constants: Vec<Constant>,
pub interfaces: Vec<InterfaceSpec>,
pub subtype_constraints: Vec<SubTypeConstraint>,
}