#![doc = include_str!("../README.md")]
#[macro_use]
mod macros;
pub mod ast;
mod database;
mod diagnostics;
pub mod executable;
mod node;
mod node_str;
mod parser;
pub mod schema;
mod validation;
use crate::database::{InputDatabase, ReprDatabase, RootDatabase, Source};
use crate::diagnostics::ApolloDiagnostic;
use crate::validation::ValidationDatabase;
pub use self::database::FileId;
pub use self::executable::ExecutableDocument;
pub use self::node::{Node, NodeLocation};
pub use self::node_str::NodeStr;
pub use self::parser::{parse_mixed, Parser, SourceFile, SourceMap};
pub use self::schema::Schema;
pub use self::validation::Diagnostics;
pub(crate) struct ApolloCompiler {
pub db: RootDatabase,
}
#[allow(clippy::new_without_default)]
impl ApolloCompiler {
pub fn new() -> Self {
let mut db = RootDatabase::default();
db.set_source_files(vec![]);
Self { db }
}
}