XLANG-s の変数および演算子
このセクションでは、XLANG/s 言語で使用される変数および演算子について説明します。
XLANG/s の変数
変数は格納場所を表します。 各変数には型があり、この型によってその変数に格納できる値が決まります。 XLANG/s はタイプ セーフであり、コンパイラによって変数に格納された値が常に適切な型であることが保証されます。 XLANG/s は、次の変数の型をサポートしています。
メッセージ
関連付けセット
サービス リンク
Port
識別された組み込み値の型: Boolean、 Byte、 Char、 Decimal、 Double、 Int16、 Int32、 Int64、 SByte、 Single、 String、 UInt16、 UInt32、 UInt64
オブジェクト
列挙型
XLANG/s には、上記の各型について初期化のセマンティクスが用意されています。 これらの初期化は、その型の変数への代入と見なすことができます。 XLANG/s では、変数に明示的に代入しないと、その値を取得または使用することはできません。
XLANG/s の演算子
XLANG/s は、次の演算子をサポートしています。 C# の対応する演算子の機能にほぼ準拠しています。
演算子 | 説明 | 例 |
---|---|---|
checked | 算術オーバーフロー時にエラーを発生させます | checked(x = y * 1000) |
unchecked | 算術オーバーフローを無視 | unchecked(x = y * 1000) |
new | クラスのインスタンスを作成 | myObject = new MyClass; |
typeof | 型を取得 | myMapType = typeof(myMap) |
succeeded | トランザクション スコープまたはオーケストレーションが正常に完了するかどうかをテスト | succeeded(<現在のスコープまたはサービス>の子トランザクションのトランザクション ID) |
exists | メッセージ コンテキスト プロパティの存在をテストします | BTS.RetryCount exists Message_In |
+ | 単項プラス | +(int x) |
- | 単項マイナス | -(int x) |
! | 論理否定 | !myBool |
~ | ビットごとの補数 | x = ~y |
() | Cast | (bool) myInt |
* | 時刻 | Weight = MyMsg.numOrders * 20 |
/ | 除算 | x / y |
+ | Plus | x + y |
- | Minus | x - y |
<< | 左シフト。 | x << 2 |
>> | 右シフト。 | x >> 2 |
< | より小さい | If (MyMsg.numOrders < 10)... |
> | より大きい | If (MyMsg.numOrders > 10)... |
<= | 以下 | If (MyMsg.numOrders <= 10)... |
>= | 以上 | If (MyMsg.numOrders >= 10)... |
== | 等しい | If (MyMsg.numOrders == 10)... |
!= | 等しくない | If (MyMsg.numOrders != 10)... |
参照
XLANG-s データ型
XLANG-s ステートメント
XLANG-s 式
XLANG-s の予約語
XLANG-s から BPEL4WS への種類の変換