@@ -51,8 +51,8 @@ function parse(tokens) {
51
51
decl = undefined ;
52
52
return true ;
53
53
}
54
- var parseerror = function ( ) {
55
- console . log ( "Parse error at token " + i + ": " + token ) ;
54
+ var parseerror = function ( msg ) {
55
+ console . log ( "Parse error at token " + i + ": " + token + ".\n" + msg ) ;
56
56
return true ;
57
57
}
58
58
var pop = function ( ) {
@@ -82,7 +82,7 @@ function parse(tokens) {
82
82
case "CDC" :
83
83
case "WHITESPACE" : break ;
84
84
case "AT-KEYWORD" : push ( new AtRule ( token . value ) ) && switchto ( 'at-rule' ) ; break ;
85
- case "{" : parseerror ( ) && consumeASimpleBlock ( token ) ; break ;
85
+ case "{" : parseerror ( "Attempt to open a curly-block at top-level." ) && consumeASimpleBlock ( token ) ; break ;
86
86
default : push ( new SelectorRule ) && switchto ( 'selector' ) && reprocess ( ) ;
87
87
}
88
88
break ;
@@ -92,7 +92,7 @@ function parse(tokens) {
92
92
case ";" : pop ( ) && switchto ( ) ; break ;
93
93
case "{" :
94
94
if ( rule . fillType !== '' ) switchto ( rule . fillType ) ;
95
- else parseerror ( ) && switchto ( 'next-block' ) && reprocess ( ) ;
95
+ else parseerror ( "Attempt to open a curly-block in a statement-type at-rule." ) && switchto ( 'next-block' ) && reprocess ( ) ;
96
96
break ;
97
97
case "[" :
98
98
case "(" : rule . appendPrelude ( consumeASimpleBlock ( token ) ) ; break ;
@@ -105,7 +105,7 @@ function parse(tokens) {
105
105
switch ( token . tokenType ) {
106
106
case "WHITESPACE" : break ;
107
107
case "BADSTRING" :
108
- case "BADURL" : parseerror ( ) && switchto ( 'next-block' ) ; break ;
108
+ case "BADURL" : parseerror ( "Use of BADSTRING or BADURL token in selector." ) && switchto ( 'next-block' ) ; break ;
109
109
case "}" : pop ( ) && switchto ( ) ; break ;
110
110
case "AT-KEYWORD" : push ( new AtRule ( token . value ) ) && switchto ( 'at-rule' ) ; break ;
111
111
default : push ( new SelectorRule ) && switchto ( 'selector' ) && reprocess ( ) ;
@@ -137,8 +137,8 @@ function parse(tokens) {
137
137
switch ( token . tokenType ) {
138
138
case "WHITESPACE" : break ;
139
139
case ":" : switchto ( 'declaration-value' ) ; break ;
140
- case ";" : parseerror ( ) && discarddecl ( ) && switchto ( ) ; break ;
141
- default : parseerror ( ) && discarddecl ( ) && switchto ( 'next-declaration' ) ;
140
+ case ";" : parseerror ( "Incomplete declaration - semicolon after property name." ) && discarddecl ( ) && switchto ( ) ; break ;
141
+ default : parseerror ( "Invalid declaration - additional token after property name" ) && discarddecl ( ) && switchto ( 'next-declaration' ) ;
142
142
}
143
143
break ;
144
144
@@ -168,7 +168,7 @@ function parse(tokens) {
168
168
case "WHITESPACE" : break ;
169
169
case ";" : rule . append ( decl ) && discarddecl ( ) && switchto ( ) ; break ;
170
170
case "}" : rule . append ( decl ) && discarddecl ( ) && pop ( ) && switchto ( ) ; break ;
171
- default : parseerror ( ) && discarddecl ( ) && switchto ( 'next-declaration' ) ;
171
+ default : parseerror ( "Invalid declaration - additional token after !important." ) && discarddecl ( ) && switchto ( 'next-declaration' ) ;
172
172
}
173
173
break ;
174
174
0 commit comments