teacat_lib

Crates.ioteacat_lib
lib.rsteacat_lib
version0.1.1
created_at2025-05-31 22:01:11.855702+00
updated_at2025-05-31 22:11:33.095501+00
descriptionTools for working with TeaCat files
homepage
repository
max_upload_size
id1696685
size41,298
Juniper (Ultrasquid9)

documentation

README

TeaCat

This crate contains basic tools for working with TeaCat files.

use teacat_lib::prelude::*;

let teacat_str = "
&title := :title[My Webpage];

:head[
	&title
]

:body[
	:p[Hello, World!]
]
"
.to_string();

let tokenstream = TokenStream::lex(teacat_str);
let ast = Ast::parse(tokenstream)?;
let expanded = ExpandedAst::expand(ast)?;
let html = HtmlRenderer::render(expanded);

assert_eq!(
	html,
	"<!DOCTYPE html><html><head><title>My Webpage</title></head><body><p>Hello, World!</p></body></html>".to_string()
);
Commit count: 0

cargo fmt