> ## 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 languageの字句規則: 識別子の構文、句読点記号、演算子の優先順位と結合性、代入、定数、コメント。

FlexiLayout languageでは、識別子、句読点記号、演算子、代入、定数、およびコメントについて、次の字句規則に従います。

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

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

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

識別子では、大文字と小文字は区別されません。

識別子の構文:

```text theme={null}
identifier:
   nondigit
   identifier nondigit
   identifier digit

nondigit: one of
   _ 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

digit: one of
   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        | 左から右 |

<Note>
  比較演算 (`<`, `>`, `<=`, `>=`, `==`, `!=`) の優先順位は同じです。
</Note>

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

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

例:

```text theme={null}
Distance a;
a = Page( 1 ).RectGlobal.Width;
```

式の型は、変数の型と互換性がある必要があります。

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

FlexiLayout language では、グローバル定数のみを使用します。グローバル定数は **FlexiLayout プロパティ** ダイアログで設定し、任意のブロックまたは要素の記述内のどのセクションからでも参照できます。

詳細については、[Global constants](/ja/flexi-capture/fls/code/global-constant)を参照してください。

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

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

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