krafna 0.5.6

Krafna is a terminal-based alternative to Obsidian's Dataview plugin, allowing you to query your Markdown files using standard SQL syntax.
Documentation
pub mod markdown_fetcher;
pub mod pod;

// Re-export important items from submodules
//pub use data_fetcher::fetch_data;

use std::error::Error;

use crate::libs::data_fetcher::pod::Pod;
use crate::libs::parser::Function;

pub fn fetch_data(from_function: &Function) -> Result<Vec<Pod>, Box<dyn Error>> {
    match from_function.name.to_uppercase().as_str() {
        "FRONTMATTER_DATA" => markdown_fetcher::fetch_frontmatter_data(&from_function.args),
        "MD_LINKS" => markdown_fetcher::fetch_markdown_links(&from_function.args),
        "MD_TASKS" => markdown_fetcher::fetch_markdown_tasks(&from_function.args),
        _ => Err(format!("Unknown function: {}", from_function.name).into()),
    }
}