(left, right, comparators)
| 3504 | return { version: version, major: major, minor: minor, patch: patch }; |
| 3505 | } |
| 3506 | function parseHyphen(left, right, comparators) { |
| 3507 | var leftResult = parsePartial(left); |
| 3508 | if (!leftResult) |
| 3509 | return false; |
| 3510 | var rightResult = parsePartial(right); |
| 3511 | if (!rightResult) |
| 3512 | return false; |
| 3513 | if (!isWildcard(leftResult.major)) { |
| 3514 | comparators.push(createComparator(">=", leftResult.version)); |
| 3515 | } |
| 3516 | if (!isWildcard(rightResult.major)) { |
| 3517 | comparators.push(isWildcard(rightResult.minor) ? createComparator("<", rightResult.version.increment("major")) : |
| 3518 | isWildcard(rightResult.patch) ? createComparator("<", rightResult.version.increment("minor")) : |
| 3519 | createComparator("<=", rightResult.version)); |
| 3520 | } |
| 3521 | return true; |
| 3522 | } |
| 3523 | function parseComparator(operator, text, comparators) { |
| 3524 | var result = parsePartial(text); |
| 3525 | if (!result) |
no test coverage detected