You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
595 B
28 lines
595 B
4 weeks ago
|
var TYPE = require('../../tokenizer').TYPE;
|
||
|
|
||
|
var HASH = TYPE.Hash;
|
||
|
|
||
|
// <hash-token>
|
||
|
module.exports = {
|
||
|
name: 'IdSelector',
|
||
|
structure: {
|
||
|
name: String
|
||
|
},
|
||
|
parse: function() {
|
||
|
var start = this.scanner.tokenStart;
|
||
|
|
||
|
// TODO: check value is an ident
|
||
|
this.eat(HASH);
|
||
|
|
||
|
return {
|
||
|
type: 'IdSelector',
|
||
|
loc: this.getLocation(start, this.scanner.tokenStart),
|
||
|
name: this.scanner.substrToCursor(start + 1)
|
||
|
};
|
||
|
},
|
||
|
generate: function(node) {
|
||
|
this.chunk('#');
|
||
|
this.chunk(node.name);
|
||
|
}
|
||
|
};
|