tiger_lib/
datacontext.rs

1//! [`DataContext`] tracks what we know about the GUI datamodels and datacontexts.
2//! Currently it only tracks the `ScriptedGui` name.
3
4use crate::token::Token;
5
6#[derive(Debug, Clone)]
7pub struct DataContext {
8    sgui_name: Option<Token>,
9}
10
11impl DataContext {
12    pub fn new() -> Self {
13        Self { sgui_name: None }
14    }
15
16    pub fn set_sgui_name(&mut self, name: Token) {
17        self.sgui_name = Some(name);
18    }
19
20    #[allow(dead_code)]
21    pub fn sgui_name(&self) -> Option<&Token> {
22        self.sgui_name.as_ref()
23    }
24}