For those who don’t know, RCPTT (RCP Testing Tool) originally known as Q7 IDE, is an open source project with a focus to test Eclipse plugins and RCP applications. For more details, visit the RCPTT website.
Let’s assume we have a list of strings and we want to count the frequency of a given string. We will use the command each
to iterate over the list and check whether it contains the string.
Let’s create a procedure in ECL, the scripting language used by RCPTT.
proc countOccurrences [val items -input] [val targetItem] {
$items | each [val it] {
if [$it | eq $targetItem] {
bool true
}
} | length
}
The trick here is to return some value in the if
section every time the string is found. In our example, we return a boolean but actually we can return any other value. This is important in order to count the number of returned values at the end.
Run some tests.
global [val items [list a b c a d e a a]]
$items | countOccurrences a | log
$items | countOccurrences p | log
The output.
!MESSAGE 4
!MESSAGE 0
Top comments (0)