Sha256: e6d183404caebdb4692fd1467a0cc951b7c6512e5ec33debb218a3f19a160766
Contents?: true
Size: 1.05 KB
Versions: 19
Compression:
Stored size: 1.05 KB
Contents
var TYPE = require('../../tokenizer').TYPE; var PLUSSIGN = TYPE.PlusSign; var SOLIDUS = TYPE.Solidus; var GREATERTHANSIGN = TYPE.GreaterThanSign; var TILDE = TYPE.Tilde; // + | > | ~ | /deep/ module.exports = { name: 'Combinator', structure: { name: String }, parse: function() { var start = this.scanner.tokenStart; switch (this.scanner.tokenType) { case GREATERTHANSIGN: case PLUSSIGN: case TILDE: this.scanner.next(); break; case SOLIDUS: this.scanner.next(); this.scanner.expectIdentifier('deep'); this.scanner.eat(SOLIDUS); break; default: this.scanner.error('Combinator is expected'); } return { type: 'Combinator', loc: this.getLocation(start, this.scanner.tokenStart), name: this.scanner.substrToCursor(start) }; }, generate: function(node) { this.chunk(node.name); } };
Version data entries
19 entries across 18 versions & 4 rubygems