$RR.getReverseIterator()

Community help and discussion for RapidRep Designer Application

$RR.getReverseIterator()

Postby jclassen » 15 Jun 2018, 16:17

Hallo,

Was mache ich falsch? Ich möchte eine Liste rückwärts ausgeben. Kann ich das nur mit b)?

#set($list = ['a','b','c'])

-- a)
#foreach($e in $RR.getReverseIterator($list.iterator()))
$e
#next

-- b)
#foreach($i in [$RR.sum($list.size(),-1).intValue()..0])
$list.get($i)
#next
jclassen
 
Posts: 16
Joined: 19 Apr 2017, 16:34

Re: $RR.getReverseIterator()

Postby ChristoffSchmitz » 18 Jun 2018, 09:02

RapidRep kann leider nicht jeden beliebigen Iterator rückwärts durchlaufen, da Iterator lediglich ein Interface ist und RapidRep das Reversieren daher nur für eigene Iteratoren anbieten kann.
Für Listen gibt es aber einen von RapidRep bereitgestellten Iterator, der in diesem Fall verwendet werden kann:

#set($list = ['a','b','c'])

#foreach($e in $RR.getReverseIterator($RR.getIterator($list)))
$e
#next

alternativ:

#set($list = ['a','b','c'])
#set($iterator = $RR.getIterator($list))

#foreach($e in $iterator.getReverseIterator())
$e
#next
ChristoffSchmitz
 
Posts: 10
Joined: 20 Aug 2013, 09:54


Return to RapidRep Designer



Who is online

Users browsing this forum: No registered users and 0 guests

cron