1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| var TYPE = require('../../tokenizer').TYPE;
|
| var IDENT = TYPE.Ident;
| var FULLSTOP = 0x002E; // U+002E FULL STOP (.)
|
| // '.' ident
| module.exports = {
| name: 'ClassSelector',
| structure: {
| name: String
| },
| parse: function() {
| if (!this.scanner.isDelim(FULLSTOP)) {
| this.error('Full stop is expected');
| }
|
| this.scanner.next();
|
| return {
| type: 'ClassSelector',
| loc: this.getLocation(this.scanner.tokenStart - 1, this.scanner.tokenEnd),
| name: this.consume(IDENT)
| };
| },
| generate: function(node) {
| this.chunk('.');
| this.chunk(node.name);
| }
| };
|
|