diff options
| author | 魏曹先生 <1992414357@qq.com> | 2026-02-09 18:32:24 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2026-02-09 18:32:24 +0800 |
| commit | 204bb6824bf3555b80ca574ca3edb8ea007c89dd (patch) | |
| tree | 9a50b67ff64b2d1fe918e4bfa5034ac8389668e3 /parser/src/error.rs | |
| parent | 12d08d599a41b15e0a20113d1a521c8c3a232e79 (diff) | |
Add file inclusion and text formatting to parser
Diffstat (limited to 'parser/src/error.rs')
| -rw-r--r-- | parser/src/error.rs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/parser/src/error.rs b/parser/src/error.rs index ca68442..b9ac888 100644 --- a/parser/src/error.rs +++ b/parser/src/error.rs @@ -1,4 +1,4 @@ -use std::{i64, process::exit}; +use std::{i64, path::PathBuf, process::exit}; use colored::Colorize; use unicode_width::UnicodeWidthStr; @@ -14,6 +14,8 @@ pub enum Exit { begin: i64, end: i64, }, + DuplicateMarker(String), + CycleDependency(PathBuf), } impl From<std::io::Error> for Exit { @@ -35,6 +37,14 @@ pub fn handle_exit(e: Exit) { } => { print_syntax_error(content, reason, line, begin, end); } + Exit::DuplicateMarker(marker) => { + eprintln!("Duplicate marker `{}` found!", marker); + exit(1) + } + Exit::CycleDependency(dialog) => { + eprintln!("Dialog `{}` depends on itself!", dialog.display()); + exit(1) + } } } |
