rssg 1.3.0

A rusty static-site generator leveraging shell commands.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
pub mod common;
pub mod filter;
pub mod rule;

use crate::error::*;
use crate::field;
use crate::rule::Rule;

pub fn parse(data: String) -> ParseResult<Vec<Rule>> {
    let data: toml::Value = toml::from_str(&data).map_err(ParseError::TomlError)?;

    let filters = field!(data, filters, Array);
    let rules = field!(data, rules, Array);

    let filters = filter::parse_filters(filters)?;
    rule::parse_rules(rules, &filters)
}