Skip to main content

luaur_ast/methods/
parse_errors_parse_errors.rs

1use crate::records::parse_error::ParseError;
2use crate::records::parse_errors::ParseErrors;
3use luaur_common::LUAU_ASSERT;
4
5impl ParseErrors {
6    pub fn new(errors: Vec<ParseError>) -> Self {
7        LUAU_ASSERT!(!errors.is_empty());
8
9        let message = if errors.len() == 1 {
10            errors[0].what().to_string()
11        } else {
12            alloc::format!("{} parse errors", errors.len())
13        };
14
15        Self { errors, message }
16    }
17}
18
19#[allow(non_snake_case)]
20pub fn parse_errors_parse_errors(errors: Vec<ParseError>) -> ParseErrors {
21    ParseErrors::new(errors)
22}