Skip to main content

svelte_compiler/
ast.rs

1use std::sync::Arc;
2
3use serde::{Deserialize, Serialize};
4
5pub use svelte_syntax::ast::{CssAst, CssRootType, Root};
6pub use svelte_syntax::ast::{common, legacy, modern};
7
8#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
9pub struct Document {
10    #[serde(flatten)]
11    pub root: Root,
12
13    #[serde(skip)]
14    pub(crate) source: Arc<str>,
15}
16
17impl Document {
18    pub fn source(&self) -> &str {
19        &self.source
20    }
21}