Spaces:
Configuration error
Configuration error
; | |
const types = require('../../tokenizer/types.cjs'); | |
const name = 'MediaQuery'; | |
const structure = { | |
children: [[ | |
'Identifier', | |
'MediaFeature', | |
'WhiteSpace' | |
]] | |
}; | |
function parse() { | |
const children = this.createList(); | |
let child = null; | |
this.skipSC(); | |
scan: | |
while (!this.eof) { | |
switch (this.tokenType) { | |
case types.Comment: | |
case types.WhiteSpace: | |
this.next(); | |
continue; | |
case types.Ident: | |
child = this.Identifier(); | |
break; | |
case types.LeftParenthesis: | |
child = this.MediaFeature(); | |
break; | |
default: | |
break scan; | |
} | |
children.push(child); | |
} | |
if (child === null) { | |
this.error('Identifier or parenthesis is expected'); | |
} | |
return { | |
type: 'MediaQuery', | |
loc: this.getLocationFromList(children), | |
children | |
}; | |
} | |
function generate(node) { | |
this.children(node); | |
} | |
exports.generate = generate; | |
exports.name = name; | |
exports.parse = parse; | |
exports.structure = structure; | |