Freigeben über


Variablen und Operatoren in XLANG-s

In diesem Abschnitt werden die in der Sprache XLANG/s verwendeten Variablen und Operatoren erläutert.

Variablen in XLANG/s

Variablen stellen Speicherorte dar. Jede Variable hat einen zugehörigen Datentyp, der die Werte bestimmt, die in der Variable gespeichert werden können. XLANG/s ist typsicher. Über den XLAMG/s-Compiler wird sichergestellt, dass die in Variablen gespeicherten Werte immer vom passenden Typ sind. In XLANG/s werden die folgenden Variablentypen unterstützt:

  • Nachrichten

  • Korrelationssätze

  • Dienstverknüpfungen

  • Ports

  • Unterschiedene integrierte Werttypen: Boolean, Byte, Char, Decimal, Double, Int16, Int32, Int64, SByte, Single, String, UInt16, UInt32 und UInt64

  • Objekte

  • Enumerationstypen

    In XLANG/s wird eine Initialisierungssemantik für jeden der oben aufgeführten Datentypen bereitgestellt. Eine solche Initialisierung kann als Zuweisung zu einer Variable dieses Typs bezeichnet werden. In XLANG/s muss eine Variable definitiv zugewiesen werden, bevor ihr Wert abgerufen oder verwendet werden kann.

XLANG/s-Operatoren

In XLANG/s werden die folgenden Operatoren unterstützt: Diese Operatoren sind in ihrer Funktionalität eng an den entsprechenden Operatoren in C# ausgerichtet.

Operator BESCHREIBUNG Beispiel
checked Löst einen Fehler bei arithmetischem Überlauf aus. checked(x = y * 1000)
unchecked Ignoriert arithmetischen Überlauf. unchecked(x = y * 1000)
neu Erstellt eine Instanz von einer Klasse. myObject = new MyClass;
typeof Ruft einen Datentyp ab. myMapType = typeof(myMap)
succeeded Prüft den erfolgreichen Abschluss eines Transaktionsbereichs oder einer Orchestrierung. succeeded(<Transaktions-ID für untergeordnete Transaktionen des aktuellen Bereichs oder Diensts>)
exists Prüft das Vorhandensein einer Nachrichtenkontexteigenschaft. BTS.RetryCount exists Message_In
+ Unäres Plus +(int x)
- Unäres Minus -(int x)
! Logische Negation !myBool
~ Bitweise Ergänzung x = ~y
() Typumwandlung (bool) myInt
* Uhrzeiten Weight = MyMsg.numOrders * 20
/ Geteilt durch x / y
+ Plus x + y
- Subtraktion x - y
<< Linksverschiebung x << 2
>> Rechtsverschiebung x >> 2
< Kleiner als If (MyMsg.numOrders < 10)...
> Größer als If (MyMsg.numOrders > 10)...
<= Kleiner als oder gleich If (MyMsg.numOrders <= 10)...
>= Größer als oder gleich If (MyMsg.numOrders >= 10)...
== Gleich If (MyMsg.numOrders == 10)...
!= Ungleich If (MyMsg.numOrders != 10)...

Weitere Informationen

XLANG-s-Datentypen
XLANG-s-Anweisungen
XLANG-s-Ausdrücke
XLANG-s – reservierte Wörter
Typkonvertierungen von XLANG-/s in BPEL4WS