'{0}' label is not shown anymore

Previously, '{0}' would be labelled as '-1 Times', which is not actually the case.
Also I am not sure to best visualize such a pattern, right now, except for the label,
'a{0}' looks similar to 'a?', even though they don't have the same effect.
This commit is contained in:
Sebastian Thiel 2016-01-03 18:27:34 +01:00 committed by Jeff Avallone
parent a624c00554
commit 388c625e47
2 changed files with 15 additions and 0 deletions

View File

@ -54,6 +54,13 @@ describe('parser/javascript/repeat.js', function() {
hasSkip: false,
hasLoop: false
},
'{0}': {
minimum: 0,
maximum: 0,
greedy: true,
hasSkip: true,
hasLoop: false
},
'{1}?': {
minimum: 1,
maximum: 1,
@ -202,6 +209,11 @@ describe('parser/javascript/repeat.js', function() {
maximum: -1,
label: undefined
},
{
minimum: 0,
maximum: 0,
label: undefined
},
{
minimum: 2,
maximum: -1,

View File

@ -33,6 +33,9 @@ export default {
label: {
get: function() {
if (this.minimum === this.maximum) {
if (this.minimum === 0) {
return undefined;
}
return formatTimes(this.minimum - 1);
} else if (this.minimum <= 1 && this.maximum >= 2) {
return `at most ${formatTimes(this.maximum - 1)}`;