source: imaps-frontend/node_modules/css-tree/lib/syntax/node/AtrulePrelude.js

main
Last change on this file was d565449, checked in by stefan toskovski <stefantoska84@…>, 4 weeks ago

Update repo after prototype presentation

  • Property mode set to 100644
File size: 1.3 KB
Line 
1var TYPE = require('../../tokenizer').TYPE;
2
3var SEMICOLON = TYPE.Semicolon;
4var LEFTCURLYBRACKET = TYPE.LeftCurlyBracket;
5
6module.exports = {
7 name: 'AtrulePrelude',
8 structure: {
9 children: [[]]
10 },
11 parse: function(name) {
12 var children = null;
13
14 if (name !== null) {
15 name = name.toLowerCase();
16 }
17
18 this.scanner.skipSC();
19
20 if (this.atrule.hasOwnProperty(name) &&
21 typeof this.atrule[name].prelude === 'function') {
22 // custom consumer
23 children = this.atrule[name].prelude.call(this);
24 } else {
25 // default consumer
26 children = this.readSequence(this.scope.AtrulePrelude);
27 }
28
29 this.scanner.skipSC();
30
31 if (this.scanner.eof !== true &&
32 this.scanner.tokenType !== LEFTCURLYBRACKET &&
33 this.scanner.tokenType !== SEMICOLON) {
34 this.error('Semicolon or block is expected');
35 }
36
37 if (children === null) {
38 children = this.createList();
39 }
40
41 return {
42 type: 'AtrulePrelude',
43 loc: this.getLocationFromList(children),
44 children: children
45 };
46 },
47 generate: function(node) {
48 this.children(node);
49 },
50 walkContext: 'atrulePrelude'
51};
Note: See TracBrowser for help on using the repository browser.