+ case KeyInfo::cleanToStart: {
+ actual._dataEnd = actual._dataStart;
+ if (interval.par[actual._dataStart] == '[') {
+ // Discard optional params
+ actual._dataStart = interval.findclosing(actual._dataStart+1, interval.par.length(), '[', ']') + 1;
+ }
+ actual._dataEnd = actual._dataStart;
+ nextKeyIdx = getNextKey();
+ // Search for end of arguments
+ int tmpIdx = nextKeyIdx;
+ while (tmpIdx > 0) {
+ KeyInfo &nextk = entries[tmpIdx];
+ if (nextk.keytype == KeyInfo::endArguments) {
+ actual._dataEnd = nextk._dataEnd;
+ break;
+ }
+ nextk.disabled = true;
+ tmpIdx++;
+ if (tmpIdx >= int(entries.size()))
+ break;
+ }
+ while (interval.par[actual._dataEnd] == ' ')
+ actual._dataEnd++;
+ interval.addIntervall(0, actual._dataEnd+1);
+ interval.actualdeptindex = 0;
+ interval.depts[0] = actual._dataEnd+1;
+ interval.closes[0] = -1;
+ break;
+ }