Dashboard sipadu mbip
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.

BlankLine.js 2.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.default = void 0;
  7. var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
  8. var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
  9. var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
  10. var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
  11. var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
  12. var _constants = require("../constants");
  13. var _Node2 = _interopRequireDefault(require("./Node"));
  14. var _Range = _interopRequireDefault(require("./Range"));
  15. var BlankLine =
  16. /*#__PURE__*/
  17. function (_Node) {
  18. (0, _inherits2.default)(BlankLine, _Node);
  19. function BlankLine() {
  20. (0, _classCallCheck2.default)(this, BlankLine);
  21. return (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(BlankLine).call(this, _constants.Type.BLANK_LINE));
  22. }
  23. (0, _createClass2.default)(BlankLine, [{
  24. key: "parse",
  25. /**
  26. * Parses blank lines from the source
  27. *
  28. * @param {ParseContext} context
  29. * @param {number} start - Index of first \n character
  30. * @returns {number} - Index of the character after this
  31. */
  32. value: function parse(context, start) {
  33. this.context = context;
  34. var src = context.src;
  35. var offset = start + 1;
  36. while (_Node2.default.atBlank(src, offset)) {
  37. var lineEnd = _Node2.default.endOfWhiteSpace(src, offset);
  38. if (lineEnd === '\n') offset = lineEnd + 1;else break;
  39. }
  40. this.range = new _Range.default(start, offset);
  41. return offset;
  42. }
  43. }, {
  44. key: "includesTrailingLines",
  45. get: function get() {
  46. return true;
  47. }
  48. }]);
  49. return BlankLine;
  50. }(_Node2.default);
  51. exports.default = BlankLine;