Sha256: 9baa17264312ac24ac087fa20ff87897567d06577dfdb438dcb4773bc6c23b1f
Contents?: true
Size: 1.59 KB
Versions: 12
Compression:
Stored size: 1.59 KB
Contents
'use strict'; exports.__esModule = true; var list = { split: function split(string, separators, last) { var array = []; var current = ''; var split = false; var func = 0; var quote = false; var escape = false; for (var i = 0; i < string.length; i++) { var letter = string[i]; if (quote) { if (escape) { escape = false; } else if (letter === '\\') { escape = true; } else if (letter === quote) { quote = false; } } else if (letter === '"' || letter === '\'') { quote = letter; } else if (letter === '(') { func += 1; } else if (letter === ')') { if (func > 0) func -= 1; } else if (func === 0) { if (separators.indexOf(letter) !== -1) split = true; } if (split) { if (current !== '') array.push(current.trim()); current = ''; split = false; } else { current += letter; } } if (last || current !== '') array.push(current.trim()); return array; }, space: function space(string) { var spaces = [' ', '\n', '\t']; return list.split(string, spaces); }, comma: function comma(string) { var comma = ','; return list.split(string, [comma], true); } }; exports['default'] = list; module.exports = exports['default'];
Version data entries
12 entries across 3 versions & 1 rubygems