(path)
| 16997 | }; |
| 16998 | |
| 16999 | var parse = function parse(path) { |
| 17000 | var cmd; |
| 17001 | var ret = []; |
| 17002 | var args = []; |
| 17003 | var curArg = ''; |
| 17004 | var foundDecimal = false; |
| 17005 | var params = 0; |
| 17006 | |
| 17007 | var _iterator = _createForOfIteratorHelper(path), |
| 17008 | _step; |
| 17009 | |
| 17010 | try { |
| 17011 | for (_iterator.s(); !(_step = _iterator.n()).done;) { |
| 17012 | var c = _step.value; |
| 17013 | |
| 17014 | if (parameters[c] != null) { |
| 17015 | params = parameters[c]; |
| 17016 | |
| 17017 | if (cmd) { |
| 17018 | // save existing command |
| 17019 | if (curArg.length > 0) { |
| 17020 | args[args.length] = +curArg; |
| 17021 | } |
| 17022 | |
| 17023 | ret[ret.length] = { |
| 17024 | cmd: cmd, |
| 17025 | args: args |
| 17026 | }; |
| 17027 | args = []; |
| 17028 | curArg = ''; |
| 17029 | foundDecimal = false; |
| 17030 | } |
| 17031 | |
| 17032 | cmd = c; |
| 17033 | } else if ([' ', ','].includes(c) || c === '-' && curArg.length > 0 && curArg[curArg.length - 1] !== 'e' || c === '.' && foundDecimal) { |
| 17034 | if (curArg.length === 0) { |
| 17035 | continue; |
| 17036 | } |
| 17037 | |
| 17038 | if (args.length === params) { |
| 17039 | // handle reused commands |
| 17040 | ret[ret.length] = { |
| 17041 | cmd: cmd, |
| 17042 | args: args |
| 17043 | }; |
| 17044 | args = [+curArg]; // handle assumed commands |
| 17045 | |
| 17046 | if (cmd === 'M') { |
| 17047 | cmd = 'L'; |
| 17048 | } |
| 17049 | |
| 17050 | if (cmd === 'm') { |
| 17051 | cmd = 'l'; |
| 17052 | } |
| 17053 | } else { |
| 17054 | args[args.length] = +curArg; |
| 17055 | } |
| 17056 |
no test coverage detected