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; | |