8ef56fc167199e6c3337caf372f14ecf65f53dd5446c00ecf689f434e5a54af115ed118cdbede49b2e7f375ca87f7c45f131e3bd0f671b4b57f0f4f0df95cf 703 B

123456789101112131415161718192021222324252627
  1. var consumeNumber = require('../../tokenizer/utils').consumeNumber;
  2. var TYPE = require('../../tokenizer').TYPE;
  3. var PERCENTAGE = TYPE.Percentage;
  4. module.exports = {
  5. name: 'Percentage',
  6. structure: {
  7. value: String
  8. },
  9. parse: function() {
  10. var start = this.scanner.tokenStart;
  11. var numberEnd = consumeNumber(this.scanner.source, start);
  12. this.eat(PERCENTAGE);
  13. return {
  14. type: 'Percentage',
  15. loc: this.getLocation(start, this.scanner.tokenStart),
  16. value: this.scanner.source.substring(start, numberEnd)
  17. };
  18. },
  19. generate: function(node) {
  20. this.chunk(node.value);
  21. this.chunk('%');
  22. }
  23. };