データ型 (Web IDL)

型 (Web IDL)

[1] Web IDL/DOM (type) の一覧です。

目次

  1. 仕様書
  2. WebIDL 基本的な型
  3. IDL 素片により定義される型
  4. 組み合わせの型
  5. 歴史的な型
  6. 分類
  7. 識別子
  8. 型に関する概念
  9. 型指定の制約
  10. 演算
  11. 関連
  12. 歴史

仕様書#

WebIDL 基本的な型#

IDL 素片により定義される型#

[2] DOMインターフェイスの一覧型定義も参照。

組み合わせの型#

歴史的な型#

分類#

[4] Web IDL では次のような分類が定義されています >>3

識別子#

[5] Web IDL 上では、組み込みの型は予約語 (の組み合わせ) により、 IDL素片により定義される型は識別子により、 組み合わせの型はそれらと Web IDL の構文の組み合わせによって表現されます。

[6] それぞれのに対しては型名が定義されています >>3。 ただし型名は衝突することがありますから、を識別する目的では使えません。

型に関する概念#

[7] anyunion型において実際の値ののことを、 特定型といいます。

[13] 配列型列型において構成要素ののことを、要素型といいます。

[9] union型を構成するメンバー型といいます。

[8] null可能型に対して元ののことを内側型といいます。

型指定の制約#

[16] この表は古くなっています。

[12] は、指定されてる対象によって、次のような制約があります。

anyprimitive型objectインターフェイス辞書列挙コールバック関数DateRegExpvoid
定数×○?t×××××××
属性○?tau○?tau○?tau○?tau×○?tau○?tau○?tau○?tau
返し型○?taus○?taus○?taus○?taus○?taus○?taus○?taus○?taus○?taus
引数○?taus○?taus○?taus○?taus○taus○?taus○?taus○?taus○?taus
辞書メンバー○?taus○?taus○?taus○?taus※taus○?taus○?taus○?taus○?taus
例外フィールド○?tau○?tau○?tau○?tau×○?tau○?tau○?tau○?tau
直列化可能型×○?tus×※?tus※?tus○?tus×○?tus×
typedef○?taus○?taus○?taus○?taus○?taus○?taus○?taus○?taus○?taus
unionメンバー型×○?taus○?taus○?taus○?taus○?taus○?taus○?taus○?taus
null可能型内側型×○taus○taus○taus○taus○taus○taus○taus○taus
sequence<>内側型○?taus○?taus○?taus○?taus○?taus○?taus○?taus○?taus○?taus
配列内側型○?tau○?tau○?tau○?tau×○?tau○?tau○?tau○?tau
Promise内側型○?taus○?taus○?taus○?taus○?taus○?taus○?taus○?taus○?taus

演算#

[10] Web IDL値演算

関連#

Infra値, JavaScript値

歴史#

[11] Make quality an explicit argument for canvas image conversion (domenic著, ) https://github.com/whatwg/html/commit/7d25c4c2452b705220417ffb951c9b89e04ba50b

[15] Reword the distinguishability algorithm. (jyasskin著, ) https://github.com/heycam/webidl/commit/ab1756ece27426128adaa7b9ea809a7a615d6f40

[17] [geometry] Use union instead of overload for DOMMatrix/DOMMatrixReadO… (zcorpan著, ) https://github.com/w3c/fxtf-drafts/commit/2e04b5db67698e01f5852d66b300d45fe6d10387

[18] Allow extended attributes to apply to types (#286) (domenic著, ) https://github.com/heycam/webidl/commit/faaaaa9ffb548a303db362a09e4b1504c4605e0c

[19] >>18 これが前からあれば USVString は要らなかったんだがなw

[20] Fix Web IDL extended attribute usage for recent changes (domenic著, ) https://github.com/whatwg/html/commit/793ace83447c9420a4dbc14f9bb14d3c35550f0a

[21] Clarify value vs type in distinguishability categories (#413) (TimothyGu著, ) https://github.com/heycam/webidl/commit/b0ab1c0abb63ee47b30aaf502140a5c18c3e0573

[22] Fix grammar conflicts (tobie著, ) https://github.com/heycam/webidl/commit/76c51928d97b2cd09083120c64056ba4b7adc20c

[23] Check grammar is LL(1) as part of Travis builds by tobie · Pull Request #458 · heycam/webidl () https://github.com/heycam/webidl/pull/458

[24] Maybe we should think about Interface.isInterface functions again (Boris Zbarsky著, ) https://lists.w3.org/Archives/Public/public-script-coord/2013JulSep/0105.html

[25] 24413 – consider adding Interface.isInterface() functions () https://www.w3.org/Bugs/Public/show_bug.cgi?id=24413

[26] Editorial: refer to the correct types in integer conversion algorithms (Ms2ger著, ) https://github.com/heycam/webidl/commit/107e981e86919291e9e99b605751173e669f7eb5

[27] Integer type conversions seem to return wrong type for unsigned types and long long · Issue #579 · heycam/webidl () https://github.com/heycam/webidl/issues/579

[28] Editorial: Refer to the correct types in integer conversion algorithms. by Ms2ger · Pull Request #613 · heycam/webidl () https://github.com/heycam/webidl/pull/613