Skip to main content

polyfont_core/
token.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
4pub struct Position {
5    pub line: u32,
6    pub column: u32,
7}
8
9#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
10pub struct Range {
11    pub start: Position,
12    pub end: Position,
13}
14
15#[derive(Debug, Clone, Serialize, Deserialize)]
16pub struct TokenInfo {
17    pub text: String,
18    pub range: Range,
19    pub scope: String,
20    pub modifiers: Vec<String>,
21}
22
23#[derive(Debug, Clone, Serialize, Deserialize)]
24pub struct TokenCollection {
25    pub uri: String,
26    pub language: String,
27    pub tokens: Vec<TokenInfo>,
28}