Skip to main content

oak_nim/builder/
mod.rs

1use crate::NimLanguage;
2use oak_core::Builder;
3use serde::{Deserialize, Serialize};
4
5#[derive(Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)]
6pub struct NimRoot {
7    pub items: Vec<String>,
8}
9
10pub struct NimBuilder<'config> {
11    pub config: &'config NimLanguage,
12}
13
14impl<'config> NimBuilder<'config> {
15    pub fn new(config: &'config NimLanguage) -> Self {
16        Self { config }
17    }
18}
19
20impl<'config> Builder<NimLanguage> for NimBuilder<'config> {
21    fn build<'a, S: oak_core::source::Source + ?Sized>(&self, _source: &S, _edits: &[oak_core::TextEdit], _cache: &'a mut impl oak_core::BuilderCache<NimLanguage>) -> oak_core::errors::OakDiagnostics<NimRoot> {
22        oak_core::errors::OakDiagnostics { result: Ok(NimRoot { items: vec![] }), diagnostics: vec![] }
23    }
24}