diff options
Diffstat (limited to 'tools/node_modules/eslint/node_modules/remark-parse/lib/tokenize/break.js')
-rw-r--r-- | tools/node_modules/eslint/node_modules/remark-parse/lib/tokenize/break.js | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/tools/node_modules/eslint/node_modules/remark-parse/lib/tokenize/break.js b/tools/node_modules/eslint/node_modules/remark-parse/lib/tokenize/break.js new file mode 100644 index 0000000000..6d2d0dcff9 --- /dev/null +++ b/tools/node_modules/eslint/node_modules/remark-parse/lib/tokenize/break.js @@ -0,0 +1,51 @@ +/** + * @author Titus Wormer + * @copyright 2015 Titus Wormer + * @license MIT + * @module remark:parse:tokenize:break + * @fileoverview Tokenise a break. + */ + +'use strict'; + +var locate = require('../locate/break'); + +module.exports = hardBreak; +hardBreak.locator = locate; + +var MIN_BREAK_LENGTH = 2; + +/* Tokenise a break. */ +function hardBreak(eat, value, silent) { + var self = this; + var breaks = self.options.breaks; + var length = value.length; + var index = -1; + var queue = ''; + var character; + + while (++index < length) { + character = value.charAt(index); + + if (character === '\n') { + if (!breaks && index < MIN_BREAK_LENGTH) { + return; + } + + /* istanbul ignore if - never used (yet) */ + if (silent) { + return true; + } + + queue += character; + + return eat(queue)({type: 'break'}); + } + + if (character !== ' ') { + return; + } + + queue += character; + } +} |