Das Objekt "Nil"
"nil" steht für "nichts" oder "kein Eintrag vorhanden".
Es dient also als Platzhalter und zeigt an, dass an dieser Stelle kein gültiges (anderes) Objekt vorhanden ist.
Zugriff
Nil kann jederzeit mit dem Schlüsselwort "nil" aufgerufen werden.
nil
Variablen
Variablen und Konstanten dürfen generell niemals "nil" sein.
Soll auch "nil" erlaubt werden, so muss an den Namen der Variable oder Konstante ein Fragezeichen '?' angehängt werden:
abc? = nil
In diesem Fall speichert die Variable erst dann den Typ, wenn ein gültiges Objekt übergeben wird:
abc? = nil
abc? = 123
Die Variable "abc" kann und darf nun "nil" oder eine Ganzzahl enthalten.
Konstanten
Da eine Konstante generell nicht "nil" sein darf, muss auch hier ein Fragezeichen angehängt werden:
XYZ? = nil
Obwohl der zugewiesene Wert "nil" ist, ist dieser nun fixiert. Eine erneute Zuweisung an die Konstante führt zu einem Fehler.
"nil" ist ein Objekt
Auch wenn "nil" für "nichts" steht, ist es trotzdem ein Objekt und bietet verschiedene Funktionen.
Zum Beispiel lässt sich abfragen, ob das aktuelle Objekt "nil" ist:
abc? = nil
Print abc.isNil
Das Ergebnis ist natürlich "true".
Alternativ kann die Prüfung auch mit "==" erfolgen. Hier mit "If":
abc? = nil
If( abc == nil )
Print "Is nil!"
.else
Print "Is not nil!"
Ersetzen durch Vorgabewert
Soll im Falle von "nil" ein Standardwert gesetzt werden, so kann die Funktion "replaceNil" genutzt werden:
abc? = nil
abc = abc.replaceNil( "Foo" )
Print abc
Die Variable "abc" hat anfangs den Wert "nil". In der zweiten Zeile wird "nil" durch "Foo" ersetzt.