Rhinoメモ
RhinoはJavaで記述されたjavascriptエンジンだそうです。開発が継続しているのかはだいぶ微妙ですが、ちと興味を持ったので軽くメモを記しておきます。てか、日本語ドキュメントがなさすぎ。
ホスト環境から、JavaScript環境を弄るためのAPI。
- Context
- 実行するスクリプトの実行環境を表現。JavaScriptエンジンとJava側を結びつけたり、いろいろやってくれるらしい。
- ContextListener
- Contextへのリスナ。creation, entering, exiting, releasingを聞ける。
- Script
- JavaScriptのコンパイルしたあとの状態。実行のカプセル化も行う。
- ErrorReporter
- エンジンがエラーに出くわしたときの動作を決めるためのインターフェイス。
- SecurityController
- セキュリティーまわり…
- ClassShutter
- LiveConnectを通じて、JavaScript側から見えるようにするためのインターフェイス…?
- Wrapper
- ラッパ・インターフェイス
- WrapHandler
- JavaScript側から使用するために、Javaのオブジェクトをラップするもの…
- ClassOutput
- バイトコードの場所をコントロールするための何か
- ScriptableOutputStream
- JavaScriptのオブジェクトなどをシリアライズするためのもの
- ScritableInputStream
- 同上
ホスト用API…?
- Scriptable
- JavaScriptオブジェクトはこれを継承してないといけない。プロパティとかのアクセス周りに関係。
- Function
- JavaScriptの関数はこれを継承してないといけない。メソッド実行をサポート。
- ScriptableObject
- Scriptableのデフォルト実装。
- FunctionObject
- Functionのデフォルト実装。
- ImporterTopLevel
- importClass, importPackageを使用するためのもの。
例外
- JavaScriptException
- JavaScriptのthrowステートメントで投げられた例外。
- ClassDefinitionException
- Java側のオブジェクトにアクセスできなかったときに起こる例外。
- PropertyException
- Java側のプロパティとかメソッドにアクセスできなかったときに起こる例外。
- NotAFunctionException
- 関数じゃなかったときに起こる例外。
- EvaluatorException
- スクリプト実行中にエラーが起きたら投げられる例外。