> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 字句規則

> FlexiLayout 言語における識別子、句読点、演算子、定数、コメントについて説明します。

<div id="identifiers">
  ## 識別子
</div>

**識別子**は、次のいずれかを表すために使用される文字列です。

* ブロック名
* 要素名
* 定数名
* 変数名
* キーワード

識別子は大文字・小文字を区別しません。

**識別子の構文:**

```
識別子:
非数字
識別子 非数字
識別子 数字
非数字 : 次のいずれか
_ a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
数字 : 次のいずれか
0 1 2 3 4 5 6 7 8 9
```

<div id="punctuation-characters">
  ## 句読点記号
</div>

使用できる句読点は次のとおりです。

`. , ( ) * / + - = < > { } : ; ! & |`

句読点 `( )` と `{ }` は、対で記述する必要があります。

<div id="operator-precedence-and-associativity">
  ## 演算子の優先順位と結合性
</div>

最も高い優先順位は表の最上段です。

| 演算子              | 意味           | 結合性  |
| :--------------- | :----------- | :--- |
| `( )`            | 関数呼び出し       |      |
| `:`              | 関数呼び出し       |      |
| `.`              | メンバー選択       | 左から右 |
| `+` `–`          | 単項プラス、単項マイナス |      |
| `*` `/`          | 乗算、除算        | 左から右 |
| `+` `–`          | 加算、減算        | 左から右 |
| `NOT`            | 論理 NOT（単項）   |      |
| **比較演算（同じ優先順位）** |              |      |
| `<`              | より小さい        | 左から右 |
| `>`              | より大きい        | 左から右 |
| `<=`             | 以下           | 左から右 |
| `>=`             | 以上           | 左から右 |
| `==`             | 等価           | 左から右 |
| `!=`             | 不等           | 左から右 |
|                  |              |      |
| `AND`            | 論理 AND       | 左から右 |
| `OR`             | 論理 OR        | 左から右 |

<div id="assignment-operator">
  ## 代入演算子
</div>

`=` 演算子は変数に値を代入します。

例：

```
Distance a;
a = Page( 1 ).RectGlobal.Width;
```

式のデータ型は、変数のデータ型と互換である必要があります。

<div id="constants">
  ## 定数
</div>

FlexiLayout 言語 では、グローバル定数のみを使用します (すべての Code Editor セクションで使用できます) 。

現在の Activity に定義されている定数の一覧を表示および編集するには、**Search Elements** ツリーのメニューを開くためにその他アイコンをクリックし、**Constants** を選択します。

<div id="comments">
  ## コメント
</div>

コードにコメントを追加できます。コメントは C 言語と同じ形式で、次のいずれかの方法で記述できます。

* `/*`（スラッシュ、アスタリスク）に続けて任意の文字列（改行を含む）を書き、最後に `*/` を記述します。
* `//`（スラッシュ 2 つ）に続けて任意の文字列を書きます。直前にバックスラッシュがない改行で、この形式のコメントは終了します。
