use std::{collections::HashMap, path::PathBuf};
use mlua::UserData;
#[derive(Debug, PartialEq, Default, Clone)]
pub struct TreesitterParserBuildSpec {
pub lang: String,
pub parser: bool,
pub generate: bool,
pub location: Option<PathBuf>,
pub queries: HashMap<PathBuf, String>,
}
impl UserData for TreesitterParserBuildSpec {
fn add_methods<M: mlua::UserDataMethods<Self>>(methods: &mut M) {
methods.add_method("lang", |_, this, _: ()| Ok(this.lang.clone()));
methods.add_method("parser", |_, this, _: ()| Ok(this.parser));
methods.add_method("generate", |_, this, _: ()| Ok(this.generate));
methods.add_method("location", |_, this, _: ()| Ok(this.location.clone()));
methods.add_method("queries", |_, this, _: ()| Ok(this.queries.clone()));
}
}