[5] [[WebIDL]] における [DFN[[CODE(IDL)@en[[[legacycaller]]]]]] は、オブジェクトを [CODE(DOMi)@en[[[Function]]]] として実行したときに呼び出される[[メソッド]]です。 [6] [[コレクション]]を[[メソッド]]として呼び出すのはおそらく [[Microsoft]] によって [[IE4 DOM]] の一部として導入された機能で、 [[Visual Basic]] などにも同様の構文が存在しています。 [[Web]] ではあまり使われておらず、 互換性のために必要な場合に限って利用し、新機能には使わないことになっています。 (そのため 「legacy」と呼ばれています。) * [CODE(IDL)@en[legacycaller]] の一覧 [8] 現存する [CODE(IDL)@en[[[legacycaller]]]] は次の[[インターフェイス]]のものです。 [FIG[ - [CODE(DOMi)@en[[[HTMLFormControlsCollection]]]] - [CODE(DOMi)@en[[[HTMLAllCollection]]]] - [CODE(DOMi)@en[[[HTMLEmbedElement]]]] - [CODE(DOMi)@en[[[HTMLObjectElement]]]] ]FIG] [9] 次の[[インターフェイス]]には一時 [CODE(IDL)@en[[[legacycaller]]]] がありましたが、既に削除されています。 [FIG[ - [CODE(DOMi)@en[[[HTMLPropertiesCollection]]]] - [CODE(DOMi)@en[[[HTMLFormElement]]]] ]FIG] * 歴史 [1] [CITE@en[Web Applications 1.0 r6781 compat with majority of browsers]] ( ([TIME[2011-10-29 08:05:00 +09:00]] 版)) [2] [CITE@en[Web Applications 1.0 r7268 Remove some 'legacycaller's]] ( ([TIME[2012-08-25 04:31:00 +09:00]] 版)) [3] [CITE@en[Web Applications 1.0 r8469 Remove some parts of document.all that data shows have virtually no usage.]] ( ([TIME[2014-02-07 04:35:00 +09:00]] 版)) [4] [CITE@en[Web Applications 1.0 r8502 Restore document.all() legacycaller, for compat]] ( ([TIME[2014-02-22 07:12:00 +09:00]] 版)) [7] [[DOM Perl Binding]] では [CODE(perl)@en[[[use overload]]]] の [CODE(perl)[[[&{}]]]] [[演算子]]に対応することにされていましたが、後に削除されました。 ([[Perl]] では互換性のために必要がないため。)