INNER CODE UNIT · Rust

parse_type_system_document

obmarg/cynic · cynic-parser/src/lib.rs:29

pub fn parse_type_system_document(input: &str) -> Result<TypeSystemDocument, Error> {
    if input.trim().is_empty() {
        return Err(Error::EmptyTypeSystemDocument);
    }

    let lexer = lexer::Lexer::new(input);
    let mut ast = type_system::writer::TypeSystemAstWriter::new();

    parser::TypeSystemDocumentParser::new().parse(input, &mut ast, lexer)?;

    Ok(ast.finish())
}

pub fn parse_executable_document(input: &str) -> Result<ExecutableDocument, Error> {
    if input.trim().is_empty() {
        return Err(Error::EmptyExecutableDocument);
    }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…