Datentypdeduktion

Eingangssignale haben einen definierten Typ; dieser wird zum Beispiel im Variablen-Explorer in der Spalte "Typ" angezeigt. Die Typen von Zwischenergebnissen einer Berechnungsformel werden automatisch in Abhängigkeit der Eingabetypen und angewandten Operatoren gewählt. Dieser Vorgang wird als Typdeduktion bezeichnet.

Intern wird eine Berechnungsoperation durch mehrere Implementierungen mit jeweils spezifischen Typen für die Ein- und Ausgaben der Operation repräsentiert: den Typkombinationen. Die Typdeduktion funktioniert, indem eine Typkombination, die mit den Eingaben übereinstimmt, gewählt wird. Eingabetypen können in ähnliche größere Typen konvertiert werden, falls keine exakte Übereinstimmung gefunden wird:

  • Signierte Integer in größere signierte Integer
  • Unsignierte Integer in größere unsignierte Integer
  • Jeder Integer in eine 64 Bit-Gleitkommazahl
  • Boolean in jeden numerischen Typ

Beispiele:

  • Bit-Operationen existieren für alle signierten und unsignierten Integers aller Größen. Die Typdeduktion wählt die kleinste Größe, die größer oder gleich allen Eingabetypen ist.
  • Arithmetische Operationen (Addition, Multiplikation, ...) existiert nur für den Typ Double, weshalb die Typdeduktion Eingabetypen immer in Double konvertiert.