====== Set bei Funktionen ======
Set kommt bei Funktionen sich mit der Zuweisung in die Quere, wenn die Funktion eine Referenz zurückliefert.
func(a is int) as int ref :=
{
static array is int[10];
return array[a];
}
func(0) : 4;
Wenn eine Referenz zurückgeliefert wird, wird automatisch ein Setter angelegt:
func(a is int) as int ref :=
{
get:
{
static array is int[10];
return array[a];
}
set:
{
get(a) = value;
}
}
Dieser kann nun verändert werden, aber so entspricht func(a) = 1 per default func.get(a) = 1;