Skip to content

Commit cefd79a

Browse files
committed
feat: better warning start location
1 parent 76b1c41 commit cefd79a

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

float-pigment-css/src/parser/mod.rs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,7 @@ fn parse_to_paren_end<'a, 't: 'a, 'i: 't>(
376376
need_warning: bool,
377377
st: &mut ParseState,
378378
) {
379+
parser.skip_whitespace();
379380
let start = parser.current_source_location();
380381
let mut has_extra_chars = false;
381382
loop {
@@ -404,6 +405,7 @@ fn parse_to_block_end<'a, 't: 'a, 'i: 't>(
404405
need_warning: bool,
405406
st: &mut ParseState,
406407
) {
408+
parser.skip_whitespace();
407409
let start = parser.current_source_location();
408410
let mut has_extra_chars = false;
409411
loop {
@@ -470,6 +472,7 @@ fn parse_at_keyword_block<'a, 't: 'a, 'i: 't>(
470472
}
471473
match key {
472474
"import" => {
475+
parser.skip_whitespace();
473476
let start = parser.current_source_location();
474477
match parser.expect_url_or_string() {
475478
Err(_) => {
@@ -538,6 +541,7 @@ fn parse_at_keyword_block<'a, 't: 'a, 'i: 't>(
538541
parse_font_face_block(parser, sheet, st);
539542
}
540543
_ => {
544+
parser.skip_whitespace();
541545
let start = parser.current_source_location();
542546
parse_to_block_end(parser, false, st);
543547
st.add_warning_with_message(
@@ -734,6 +738,7 @@ fn parse_keyframes_block<'a, 't: 'a, 'i: 't>(
734738
sheet: &mut CompiledStyleSheet,
735739
st: &mut ParseState,
736740
) {
741+
parser.skip_whitespace();
737742
let start_location = parser.current_source_location();
738743
if let Ok(ident) = parse_keyframes_ident(parser) {
739744
if parser.expect_curly_bracket_block().is_err() {
@@ -842,6 +847,7 @@ fn parse_font_face_block<'a, 't: 'a, 'i: 't>(
842847
let mut properties = vec![];
843848
let _ = parser.parse_nested_block(|parser| -> Result<(), ParseError<'_, CustomError>> {
844849
loop {
850+
parser.skip_whitespace();
845851
if parser.is_exhausted() {
846852
break;
847853
}
@@ -1081,6 +1087,7 @@ pub(crate) fn parse_selector<'a, 't: 'a, 'i: 't>(
10811087
let fragments = parser.parse_until_before(Delimiter::CurlyBracketBlock, |parser| {
10821088
// let most_start_loc = parser.current_source_location();
10831089
parser.parse_comma_separated(|parser| {
1090+
parser.skip_whitespace();
10841091
let item_start_loc = parser.current_source_location();
10851092
let item_start_pos = parser.position();
10861093
if parser.is_exhausted() {
@@ -1707,6 +1714,7 @@ fn parse_property_list<'a, 't: 'a, 'i: 't>(
17071714
continue;
17081715
}
17091716
while parser.try_parse(|parser| parser.expect_semicolon()).is_ok() {}
1717+
parser.skip_whitespace();
17101718
if parser.is_exhausted() {
17111719
break;
17121720
}
@@ -1782,6 +1790,7 @@ fn parse_property_item<'a, 't: 'a, 'i: 't>(
17821790
st: &mut ParseState,
17831791
rule_end_position: Option<SourcePosition>,
17841792
) -> Result<(), ParseError<'i, CustomError>> {
1793+
parser.skip_whitespace();
17851794
let prop_name_start_loc = parser.current_source_location();
17861795
let prop_name_start_pos = parser.position();
17871796
let (name, is_custom_property) =
@@ -1809,6 +1818,7 @@ fn parse_property_item_debug<'a, 't: 'a, 'i: 't>(
18091818
disabled: bool,
18101819
rule_end_position: Option<SourcePosition>,
18111820
) -> Result<(), ParseError<'i, CustomError>> {
1821+
parser.skip_whitespace();
18121822
let prev_properties_len = properties.len();
18131823
let prop_name_start_index = parser.position();
18141824
let prop_name_start_loc = parser.current_source_location();

float-pigment-css/src/parser/property_value/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,7 @@ pub(crate) fn env_default_value<'a, 't: 'a, 'i: 't>(
205205
properties: &mut Vec<PropertyMeta>,
206206
st: &mut ParseState,
207207
) -> Result<Length, ParseError<'i, CustomError>> {
208+
parser.skip_whitespace();
208209
let start = parser.current_source_location();
209210
let len = length(parser, properties, st);
210211
let end = parser.current_source_location();

0 commit comments

Comments
 (0)