1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
//! External Compiler API
use either::Either;
use serde::{Serialize, Deserialize};
pub mod data;

pub fn compile_to_html(source: &str) -> String {
    let parsed = crate::frontend::run_compiler_frontend(source);
    let result = crate::backend::passes::to_html_pipeline(parsed);
    crate::codegen::html::render_document(result)
}

#[derive(Debug, Clone)]
pub enum SourceEntry {
    Html(String),
    Pdf(Vec<String>),
}

pub fn compile_entries(sources: Vec<SourceEntry>) {
    let outputs = sources
        .into_iter()
        .map(|src| {
            
        })
        .collect::<Vec<_>>();
    unimplemented!()
}