rshtml_core 0.1.0

RsHtml: A Template Engine for Seamless HTML and Rust Integration.
Documentation
use crate::Node;
use crate::compiler::Compiler;
use anyhow::Result;
use proc_macro2::TokenStream;
use quote::quote;

pub struct SectionBlockCompiler;

impl SectionBlockCompiler {
    pub fn compile(compiler: &mut Compiler, name: &str, content: &Vec<Node>) -> Result<TokenStream> {
        let mut token_stream = TokenStream::new();

        for node in content {
            let ts = compiler.compile(node)?;
            token_stream.extend(quote! {#ts});
        }

        compiler.sections.insert(name.to_owned(), token_stream);

        Ok(quote! {})
    }
}