When-Is statements are similar to the switch/case statements found in other
languages like Java or Visual Basic. The
do keyword
is entirely optional as well.
when($a) is 0 do //Do something when $a = 0 is 1 do //Do something when $a = 1 is 2 do //Do something when $a = 2 otherwise do //Do something when $a is something else end when
The When-Is statement can also be written with braces like PHP or C:
switch($a) { case 0 //Do something when $a = 0 case 1 //Do something when $a = 1 case 2 //Do something when $a = 2 default //Do something when $a is something else }
Efficiency of the When-Is statement
ZPE 1.7.12 (December 2019) changed the way that the When-Is statement works so that instead of generating an FAST for the cases, it generates a hash-map using a strong-key hashing mechanism. Unfortunately, this means that with smaller statements the efficiency is actually worse. However, with larger statements it is considerably better due to instant access.

Comments powered by BalfComment