| 55590 | var self = this; |
| 55591 | |
| 55592 | function clearStateChar() { |
| 55593 | if (stateChar) { |
| 55594 | // we had some state-tracking character |
| 55595 | // that wasn't consumed by this pass. |
| 55596 | switch (stateChar) { |
| 55597 | case '*': |
| 55598 | re += star; |
| 55599 | hasMagic = true; |
| 55600 | break; |
| 55601 | case '?': |
| 55602 | re += qmark; |
| 55603 | hasMagic = true; |
| 55604 | break; |
| 55605 | default: |
| 55606 | re += '\\' + stateChar; |
| 55607 | break; |
| 55608 | } |
| 55609 | self.debug('clearStateChar %j %j', stateChar, re); |
| 55610 | stateChar = false; |
| 55611 | } |
| 55612 | } |
| 55613 | |
| 55614 | for (var i = 0, len = pattern.length, c; i < len && (c = pattern.charAt(i)); i++) { |
| 55615 | this.debug('%s\t%s %s %j', pattern, i, re, c); |