補完候補の生成
補完候補の生成をはげしく妄想してみます。とりあえず javascript の場合、
- キーワード
- 定義した変数の名前
- 定義した変数(ユーザ定義のオブジェクトのインスタンス)のプロパティ、メソッドの名前
- 定義した変数(標準のオブジェクトのインスタンス)のプロパティ、メソッドの名前
あたりが補完されるとうれしいのではないかなー、と。で、補完を開始したときに
- '.' の直後なら、メソッドかプロパティの補完。'.' の直前の識別子の型を調べて、型に属するメソッド・プロパティの名前を候補にする
- そうでなければ、キーワードか定義した変数の名前。キャレットが位置する複文内、メソッド内、クラス内。。。の順にメンバであるメソッド・プロパティの名前を候補にする
ものすごく単純に考えると大体こんな感じになると思うのですが、これ、めちゃくちゃ大変そうです。ほとんど IDE がやってることと変わらなくなってしまいます。javascript だと変数定義の際に型を明示するわけではないからさらに面倒です。
なので、メソッド名とかプロパティ名とかで限定するのはやめて、「識別子」でひとまとめにして考えてみる。
by knife37
| 2004-11-25 03:11
| 妄想を申そう
| Top
|