Token

Ein Token ist ein Teil eines Code-Blocks. Somit lässt sich ein Code, der durch den Parser von Operno gelaufen ist, Stück für Stück analysieren.

Bezeichnungen: token

Beispiel:

def b = {
  x = a + 2
  z += x
}

def t as token(b)

while(t){
  out switch(t:type){
    #token\indentifer ("IND: " << t:indentifer)
    #token\value      ("VAL: " << t:value)
    #token\operator   ("OPO: " << t:operator)
    #token\seperator  ("SEPERATOR")
  }
  t++
}

>>> : IND: x
>>> : OPO: =
>>> : IND: a
>>> : OPO: +
>>> : VAL: 2
>>> : SEPERATOR
>>> : IND: z
>>> : OPO: +=
>>> : IND: x
>>> : SEPERATOR


this:next

Gibt das nächste Token zurück.

this:prev

Gibt das vorherige Token zurück.

this:type

Liefert den Typ des Tokens zurück. Die Werte entsrechen folgenden Bezeichnungen:

Bezeichung Beschreibung
#token\indentifer Ein Name eines Objekts
#token\value Literaler Wert
#token\operator Ein Operator
#token\seperator Ein Token, dass für die Trennung von Anweisungen sorgt (, ; ) ] })
#token\control Ein Token zur Angabe von Objektpfaden
#token\keyword Schlüsselwort

this:indentifer

Gibt den Bezeichner als Zeichenkette zurück.

this:value

Gibt den literalen Wert zurück. Die Modifizierung dieses Wertes ist möglich.

this:operator

Gibt den Operator als Zeichenkette zurück.

this:block

Liefert den Block, der mit Klammern umschlossen ist, als block zurück.

this:method ++

Setzt den jeweiligen Token zum Nächsten. Falls keiner mehr folgt, wird dieser auf "Null" gesetzt.

this:method --

Setzt den jeweiligen Token zum Vorherigen. Falls keiner mehr davor steht, wird dieser auf "Null" gesetzt.

Top | Home | Index