言語編 |
キーワードには予約語 (Reserved words)、組込み識別子(built-in identifiers)、等がある。
キーワードを識別子として使ってはいけない。しかしながら、必要なら以下のキーワードは識別子になり得る:
コンテキスト・キーワードは特殊な場所においてのみ意味を持つ。これらはいずれの場所に於いても有効な識別子である。
組み込み識別子はJavaScriptのコードからDartに変換するタスクを簡素化するためのものである。これらのキーワードは殆どの場所において有効な識別子であるが、これらはクラスの名前や型の名前、あるいはインポートのプレフィックスには使えない。
予約語の中のawaitとyieldは新しく加わったもので、Dartの1.0版リリースの後から追加された非同期対応に関連した予約語に限定されている。async, async*,またはsync*でマークされた関数ボディの中ではawaitまたはyieldを識別子として使うことはできない。
下表たちの中の他の総ての語は予約語であり、識別子としては使えない。
予約語は識別子としては使用できない。
else |
条件式の中で使う |
assert |
assert文として通常デバッグ時に機能し、運用時では無視される |
break |
ループから出るのに使う |
case |
Switch文の中で使う |
catch |
例外を捕捉しその伝搬を防ぐ |
class |
クラス宣言 |
const |
変数の固定化(コンパイル時に固定化) |
continue |
次のループの繰り返しにスキップ |
default |
switch文の中での指定caseにないものへのデフォルト指定 |
do |
do-whileループとして使う |
else |
if文の中で使う |
enum |
列挙型を示す |
extends |
サブクラスを作る |
false |
bool型の値 |
final |
変数の固定化(1回のみの代入による初期化) |
finally |
try文の中で例外の有無にかかわらず続行させる |
for |
標準的なループ文 |
if |
条件文 |
in |
for文の中でiterableな変数のために使う |
is |
実行時における型チェック |
new |
コンストラクタを使ったオブジェクト生成 |
null |
初期化されていない変数の値 |
return |
式からの戻りとその値 |
super |
スーパークラスを指定 |
switch |
switch文を宣言 |
this |
このクラス内の変数であること指定 |
true |
論理値 |
try |
try文で使用 |
var |
変数宣言 |
void |
Dart 2で追加された型 |
while |
do-while文で使用 |
with |
ミクスインの中で使用 |
予約語の中では非同期処理用のための限定されているものがある。
await |
非同期関数宣言 |
yield |
非同期処理内で値を取り出す |
組込み識別子はDartにおけるキーワードとして使われる識別子たちであるが、JavaScriptの予約語ではない。JavaScriptコードをDartにインポートする際の非互換性を最小化する為に、これらは予約語とはされていない。
abstract |
抽象クラスの宣言 |
as |
型名の短縮化 |
covariant |
共変性 |
deferred |
後回しのライブラリのロード |
dynamic |
変数の型を明示的に指定しないとき |
export |
ライブラリのエクスポート |
external |
その関数のボディを外部(例えばトップ・レベル)から取り込む |
factory |
あるクラスのインスタンスを必ずしも常に生成しないとき |
Function |
関数の型 |
get |
あるオブジェクトのプロパティの取得 |
import |
ライブラリのインポート文に使用 |
interface |
総てのクラスが暗示的なインターフェイスでもあるので、これは廃止されよう。抽象クラス宣言でも実現される |
library |
ライブラリ宣言 |
mixin |
ミクスイン宣言 |
operator |
演算子のオーバライド |
part |
あるライブラリを複数のDartファイルに分割 |
set |
あるオブジェクトのプロパティへのセット |
static |
クラス内にわたって変化しないクラス変数 |
typedef |
関数型エイリアス |
コンテキスト・キーワードは特定の場所においてのみ意味を持つ。
async |
非同期関数宣言 |
hide |
ライブラリの一部を選択的に隠す |
on |
選択的な例外の捕捉 |
show |
ライブラリの一部を選択的に使う |
sync |
同期関数宣言 |