Dmitri Blinov created JEXL-266: ---------------------------------- Summary: Allow to remove an element from iterator collection within for-loops Key: JEXL-266 URL: https://issues.apache.org/jira/browse/JEXL-266 Project: Commons JEXL Issue Type: New Feature Affects Versions: 3.1 Environment: I have created a patch as initial implementation for this new feature, please see github pull request here [pr#5|https://github.com/apache/commons-jexl/pull/5]. I whould be very grateful if this could be interesting for the community and included in master branch. Thanks in advance! Reporter: Dmitri Blinov
The for-loop in JEXL provides a convenient way to iterate over different types of collections, however, its not possible for a script writer to utilize underlying {code:java} iterator.remove(){code} method within such a loop. The proposal is to introduce new {{remove}} statement which should be used within for-loops and should internally call {{iterator.remove()}} method and skip the loop to the next element; For example, the following code should remove items {{1,2,3}} from set and return value {{3}}. {code:java} var set = {1,2,3,4,5,6}; for (var item : set) if (item <= 3) remove; return size(set) {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)