```rs pub struct Node { pub(super) uid: String, path: String, // trailing_slash_pos: usi

pub struct Node {
    pub(super) uid: String,
    path: String,
    // trailing_slash_pos: usize,
    local_signals: DashMap<String, Signal, BuildHasherDefault<FxHasher>>,
    local_methods: DashMap<String, Method, BuildHasherDefault<FxHasher>>,
    destroyable: AtomicBool,

    pub alias: OnceCell<Arc<Alias>>,
    aliases: Registry<Alias>,

    pub spatial: OnceCell<Arc<Spatial>>,
    pub field: OnceCell<Arc<Field>>,
    pub zone: OnceCell<Arc<Zone>>,

    // Data
    pub pulse_sender: OnceCell<Arc<PulseSender>>,
    pub pulse_receiver: OnceCell<Arc<PulseReceiver>>,

    // Drawable
    pub model: OnceCell<Arc<Model>>,
    pub text: OnceCell<Arc<Text>>,

    // Input
    pub input_method: OnceCell<Arc<InputMethod>>,
    pub input_handler: OnceCell<Arc<InputHandler>>,

    // Item
    pub item: OnceCell<Arc<Item>>,
    pub item_acceptor: OnceCell<Arc<ItemAcceptor>>,
    pub item_ui: OnceCell<Arc<ItemUI>>,

    // Startup
    pub startup_settings: OnceCell<Mutex<StartupSettings>>,

    pub(crate) client: Weak<Client>,
}
Was this page helpful?