Variabili e operatori XLANG-s
In questa sezione vengono illustrate le variabili e gli operatori utilizzati nel linguaggio XLANG/s.
Variabili XLANG/s
Le variabili rappresentano posizioni di archiviazione. Tutte le variabili hanno un tipo che determina quali valori possono essere archiviati in tale variabile. XLANG/s è indipendente dai tipi e il compilatore garantisce che i valori archiviati siano sempre di tipo appropriato. XLANG/s supporta i tipi di variabili seguenti:
Messaggi
Set di correlazioni
Collegamenti al servizio
Porte
Tipi di valore predefiniti distinti: Boolean, Byte, Char, Decimal, Double, Int16, Int32, Int64, SByte, Single, String, UInt16, UInt32 e UInt64
Oggetti
Tipi di enumerazione
XLANG/s consente la semantica di inizializzazione di ciascuno dei tipi precedenti. Tale inizializzazione può essere intesa come un'assegnazione a una variabile di tale tipo. In XLANG/s, una variabile deve essere assegnata in modo definitivo prima che sia possibile ottenere o utilizzare il relativo valore.
Operatori XLANG/s
XLANG/s supporta i tipi di operatori seguenti: Questi rispettano con precisione la funzionalità degli operatori corrispondenti in C#.
Operatore | Descrizione | Esempio |
---|---|---|
selezionata | Genera un errore di overflow aritmetico | checked(x = y * 1000) |
non selezionata | Ignora l'overflow di valori aritmetici | unchecked(x = y * 1000) |
Nuovo | Crea l'istanza di una classe | myObject = new MyClass; |
typeof | Recupera un tipo | myMapType = typeof(myMap) |
riuscito | Verifica il completamento corretto dell'ambito transazionale o dell'orchestrazione | successed(<ID transazione per la transazione figlio dell'ambito o del servizio> corrente) |
esiste | Verifica l'esistenza di una proprietà di contesto del messaggio | BTS.RetryCount exists Message_In |
+ | Più unario | +(int x) |
- | Operatore 'meno' unario | -(int x) |
! | Negazione logica | !myBool |
~ | Completamento bit per bit | x = ~y |
() | Cast | (bool) myInt |
* | Ore | Weight = MyMsg.numOrders * 20 |
/ | Diviso per | x / y |
+ | Plus | x + y |
- | Meno | x - y |
<< | Spostamento a sinistra | x << 2 |
>> | Spostamento a destra | x >> 2 |
< | Minore di | Se (MyMsg.numOrders < 10)... |
> | Maggiore di | Se (MyMsg.numOrders > 10)... |
<= | Minore o uguale a | Se (MyMsg.numOrders <= 10)... |
>= | Maggiore o uguale a | Se (MyMsg.numOrders >= 10)... |
== | Uguale a | If (MyMsg.numOrders == 10)... |
!= | Diverso da | If (MyMsg.numOrders != 10)... |
Vedere anche
Tipi di dati XLANG-s
Istruzioni XLANG-s
Espressioni XLANG-s
Parole riservate XLANG-s
Conversioni dal tipo XLANG-s a BPEL4WS