.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / remark-parse / lib / tokenize / newline.js
1 'use strict';
2
3 var whitespace = require('is-whitespace-character');
4
5 module.exports = newline;
6
7 /* Tokenise newline. */
8 function newline(eat, value, silent) {
9   var character = value.charAt(0);
10   var length;
11   var subvalue;
12   var queue;
13   var index;
14
15   if (character !== '\n') {
16     return;
17   }
18
19   /* istanbul ignore if - never used (yet) */
20   if (silent) {
21     return true;
22   }
23
24   index = 1;
25   length = value.length;
26   subvalue = character;
27   queue = '';
28
29   while (index < length) {
30     character = value.charAt(index);
31
32     if (!whitespace(character)) {
33       break;
34     }
35
36     queue += character;
37
38     if (character === '\n') {
39       subvalue += queue;
40       queue = '';
41     }
42
43     index++;
44   }
45
46   eat(subvalue);
47 }