- java.lang.Object
-
- javax.script.AbstractScriptEngine
-
- jdk.nashorn.api.scripting.NashornScriptEngine
-
- すべての実装されたインタフェース:
Compilable
,Invocable
,ScriptEngine
public final class NashornScriptEngine extends AbstractScriptEngine implements Compilable, Invocable
NashornのJSR-223準拠スクリプト・エンジン。 インスタンスは直接作成されず、NashornScriptEngineFactory.getScriptEngine()
から返されます。 このエンジンはCompilable
およびInvocable
インタフェースを実装し、スクリプトの効率的なプリコンパイルと繰り返し実行を可能にします。- 導入されたバージョン:
- 1.8u40
- 関連項目:
NashornScriptEngineFactory
-
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 static String
NASHORN_GLOBAL
任意のBindingsインスタンスにNashornグローバル・オブジェクト・ミラーを関連付けるためのキー。-
クラスjavax.script.AbstractScriptEngineから継承されたフィールド
context
-
インタフェース javax.script.ScriptEngineから継承されたフィールド
ARGV, ENGINE, ENGINE_VERSION, FILENAME, LANGUAGE, LANGUAGE_VERSION, NAME
-
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 CompiledScript
compile(Reader reader)
あとで実行するために、スクリプト(Reader
から読み込まれるソース)をコンパイルします。CompiledScript
compile(String str)
あとで実行するために、スクリプト(String
として表されるソース)をコンパイルします。Bindings
createBindings()
初期化されていないBindings
を返します。Object
eval(Reader reader, ScriptContext ctxt)
スクリプトのソースがReader
から読み込まれる場合、eval(String, ScriptContext)
と同じです。Object
eval(String script, ScriptContext ctxt)
ソースが1番目の引数として渡されたStringであるスクリプトをただちに実行します。ScriptEngineFactory
getFactory()
このScriptEngine
が属するクラスのScriptEngineFactory
を返します。<T> T
getInterface(Class<T> clazz)
インタプリタでコンパイルされた関数を使用して、インタフェースの実装を返します。<T> T
getInterface(Object thiz, Class<T> clazz)
インタプリタでコンパイルされたスクリプト・オブジェクトのメンバー関数を使用して、インタフェースの実装を返します。Object
invokeFunction(String name, Object... args)
スクリプト内で定義されたトップ・レベルの手続きと関数を呼び出すために使用されます。Object
invokeMethod(Object thiz, String name, Object... args)
ScriptEngine
の状態に保持されている、以前のスクリプトの実行中にコンパイルされたスクリプト・オブジェクト上のメソッドを呼び出します。-
クラスjavax.script.AbstractScriptEngineから継承されたメソッド
eval, eval, eval, eval, get, getBindings, getContext, getScriptContext, put, setBindings, setContext
-
-
-
-
メソッドの詳細
-
eval
public Object eval(Reader reader, ScriptContext ctxt) throws ScriptException
インタフェースからコピーされた説明:ScriptEngine
スクリプトのソースがReader
から読み込まれる場合、eval(String, ScriptContext)
と同じです。- 定義:
eval
、インタフェース:ScriptEngine
- パラメータ:
reader
- スクリプト・エンジンによって実行されるスクリプトのソース。ctxt
- スクリプト・エンジンに渡されるScriptContext
。- 戻り値:
- スクリプトの実行によって返される値。
- 例外:
ScriptException
- スクリプトでエラーが発生した場合。 ScriptEnginesは、基本となるスクリプトの実装によってスローされたチェック例外のScriptException
ラッパーを作成およびスローする必要があります。
-
eval
public Object eval(String script, ScriptContext ctxt) throws ScriptException
インタフェースからコピーされた説明:ScriptEngine
ソースが1番目の引数として渡されたStringであるスクリプトをただちに実行します。 スクリプトは、実行前に再解析または再コンパイルされる可能性があります。 変数値およびコンパイル済み手続きを含む、以前の実行でエンジンに残された状態は、この実行中に可視である可能性があります。- 定義:
eval
、インタフェース:ScriptEngine
- パラメータ:
script
- スクリプト・エンジンによって実行されるスクリプト。ctxt
- 異なるスコープ内の属性セットを公開するScriptContext
。 スコープScriptContext.ENGINE_SCOPE
およびScriptContext.GLOBAL_SCOPE
の意味は、仕様で定義されている。ScriptContext
のENGINE_SCOPE
Bindings
には、このスクリプトの実行中に使用される、アプリケーション・オブジェクトへのスクリプト変数のバインディングが含まれます。- 戻り値:
- スクリプトの実行によって返される値。
- 例外:
ScriptException
- スクリプトでエラーが発生した場合。 ScriptEnginesは、基本となるスクリプトの実装によってスローされたチェック例外のScriptException
ラッパーを作成およびスローする必要があります。
-
getFactory
public ScriptEngineFactory getFactory()
インタフェースからコピーされた説明:ScriptEngine
このScriptEngine
が属するクラスのScriptEngineFactory
を返します。- 定義:
- インタフェース
ScriptEngine
のgetFactory
- 戻り値:
ScriptEngineFactory
-
createBindings
public Bindings createBindings()
インタフェースからコピーされた説明:ScriptEngine
初期化されていないBindings
を返します。- 定義:
- インタフェース
ScriptEngine
のcreateBindings
- 戻り値:
- この
ScriptEngine
の状態を置換するために使用可能なBindings
。
-
compile
public CompiledScript compile(Reader reader) throws ScriptException
インタフェースからコピーされた説明:Compilable
あとで実行するために、スクリプト(Reader
から読み込まれるソース)をコンパイルします。 ソースが渡される方法を除いて、機能はcompile(String)
と同じです。- 定義:
- インタフェース
Compilable
のcompile
- パラメータ:
reader
- スクリプト・ソースの取得元となるリーダー。- 戻り値:
CompiledScript
のeval
メソッドのいずれかを使用して後で実行されるCompiledScript
のサブクラスのインスタンス。- 例外:
ScriptException
- コンパイルに失敗した場合。
-
compile
public CompiledScript compile(String str) throws ScriptException
インタフェースからコピーされた説明:Compilable
あとで実行するために、スクリプト(String
として表されるソース)をコンパイルします。- 定義:
- インタフェース
Compilable
のcompile
- パラメータ:
str
-String
として表されるスクリプトのソース。- 戻り値:
CompiledScript
のeval
メソッドのいずれかを使用して後で実行されるCompiledScript
のサブクラスのインスタンス。- 例外:
ScriptException
- コンパイルに失敗した場合。
-
invokeFunction
public Object invokeFunction(String name, Object... args) throws ScriptException, NoSuchMethodException
インタフェースからコピーされた説明:Invocable
スクリプト内で定義されたトップ・レベルの手続きと関数を呼び出すために使用されます。- 定義:
- インタフェース
Invocable
のinvokeFunction
- パラメータ:
name
- 呼び出す手続きまたは関数の名前args
- 手続きまたは関数に渡される引数- 戻り値:
- 手続きまたは関数によって返される値
- 例外:
ScriptException
- メソッドの呼出し中にエラーが発生した場合。NoSuchMethodException
- 指定された名前またはマッチングの引数型を持つメソッドが見つからない場合。
-
invokeMethod
public Object invokeMethod(Object thiz, String name, Object... args) throws ScriptException, NoSuchMethodException
インタフェースからコピーされた説明:Invocable
ScriptEngine
の状態に保持されている、以前のスクリプトの実行中にコンパイルされたスクリプト・オブジェクト上のメソッドを呼び出します。- 定義:
- インタフェース
Invocable
のinvokeMethod
- パラメータ:
thiz
- 手続きがスクリプト内で定義されたクラスのメンバーであり、thizが以前の実行または呼出しによって返されたクラスのインスタンスである場合は、そのインスタンスを使用して名前付きメソッドが呼び出される。name
- 呼び出される手続きの名前。args
- 手続きに渡される引数。 引数をスクリプト変数に変換する規則は、実装により固有。- 戻り値:
- 手続きによって返される値。 スクリプト・メソッドにより返されたスクリプト変数をJavaオブジェクトに変換する規則は、実装により固有。
- 例外:
ScriptException
- メソッドの呼出し中にエラーが発生した場合。NoSuchMethodException
- 指定された名前またはマッチングの引数型を持つメソッドが見つからない場合。
-
getInterface
public <T> T getInterface(Class<T> clazz)
インタフェースからコピーされた説明:Invocable
インタプリタでコンパイルされた関数を使用して、インタフェースの実装を返します。 インタフェースのメソッドは、invokeFunction
メソッドを使用して実装することができます。- 定義:
- インタフェース
Invocable
のgetInterface
- 型パラメータ:
T
- 返すインタフェースの型- パラメータ:
clazz
- 返すインタフェースのClass
オブジェクト。- 戻り値:
- 要求されたインタフェースのインスタンス。要求されたインタフェースが見つからない場合、すなわち
ScriptEngine
内でコンパイル済み関数が、要求されたインタフェース内のどの関数とも一致しない場合はnull。
-
getInterface
public <T> T getInterface(Object thiz, Class<T> clazz)
インタフェースからコピーされた説明:Invocable
インタプリタでコンパイルされたスクリプト・オブジェクトのメンバー関数を使用して、インタフェースの実装を返します。 インタフェースのメソッドは、invokeMethod
メソッドを使用して実装することができます。- 定義:
- インタフェース
Invocable
のgetInterface
- 型パラメータ:
T
- 返すインタフェースの型- パラメータ:
thiz
- インタフェースのメソッドを実装するために使用されるメンバー関数を持つスクリプト・オブジェクト。clazz
- 返すインタフェースのClass
オブジェクト。- 戻り値:
- 要求されたインタフェースのインスタンス。要求されたインタフェースが見つからない場合、すなわち
ScriptEngine
内のコンパイル済みメソッドが、要求されたインタフェース内のどのメソッドとも一致しない場合はnull。
-
-