JepScriptEngine
Date: 2017-11-20

jep

## Class JepScriptEngine

- java.lang.Object
- - jep.JepScriptEngine

- All Implemented Interfaces:
    java.lang.AutoCloseable, javax.script.ScriptEngine

      public class JepScriptEngine
      extends java.lang.Object
      implements javax.script.ScriptEngine, java.lang.AutoCloseable

  Implements `ScriptEngine`

- - ### Field Summary

    - ### Fields inherited from interface javax.script.ScriptEngine

      `ARGV, ENGINE, ENGINE_VERSION, FILENAME, LANGUAGE, LANGUAGE_VERSION, NAME`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JepScriptEngine()` Make a new JepScriptEngine

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` You *must* close this
    `javax.script.Bindings` | `createBindings()` Describe `createBindings` method here.
    `java.lang.Object` | `eval(java.io.Reader reader)` Run script from reader.
    `java.lang.Object` | `eval(java.io.Reader reader, javax.script.Bindings bindings)` Note: always returns null due to Python limitations.
    `java.lang.Object` | `eval(java.io.Reader reader, javax.script.ScriptContext context)` Note: always returns null due to Python limitations.
    `java.lang.Object` | `eval(java.lang.String line)` Note: always returns null due to Python limitations.
    `java.lang.Object` | `eval(java.lang.String line, javax.script.Bindings b)` Describe `eval` method here.
    `java.lang.Object` | `eval(java.lang.String line, javax.script.ScriptContext context)` Describe `eval` method here.
    `java.lang.Object` | `get(java.lang.String name)` Describe `get` method here.
    `javax.script.Bindings` | `getBindings(int scope)` Describe `getBindings` method here.
    `javax.script.ScriptContext` | `getContext()` Describe `getContext` method here.
    `javax.script.ScriptEngineFactory` | `getFactory()` Describe `getFactory` method here.
    `void` | `put(java.lang.String name, java.lang.Object val)` Describe `put` method here.
    `void` | `setBindings(javax.script.Bindings bindings, int scope)` Describe `setBindings` method here.
    `void` | `setContext(javax.script.ScriptContext c)` Describe `setContext` method here.
    `protected void` | `setFactory(javax.script.ScriptEngineFactory fact)` For internal use.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### JepScriptEngine

          public JepScriptEngine()
                          throws javax.script.ScriptException

      Make a new JepScriptEngine
      Throws:
        `javax.script.ScriptException` - if an error occurs

  - ### Method Detail

    - #### createBindings

          public javax.script.Bindings createBindings()

      Describe `createBindings` method here.
      Specified by:
        `createBindings` in interface `javax.script.ScriptEngine`
      Returns:
        a `Bindings` value
      See Also:
        `ScriptEngine.createBindings()`

    - #### eval

          public java.lang.Object eval(java.io.Reader reader)
                                throws javax.script.ScriptException

           Run script from reader.

           Performance of this method will suck compared to using
           Jep.runScript(). Use the compiled interface or something.

      Specified by:
        `eval` in interface `javax.script.ScriptEngine`
      Parameters:
        `reader` - a `Reader` value
      Returns:
        an `Object` value
      Throws:
        `javax.script.ScriptException` - if an error occurs

    - #### eval

          public java.lang.Object eval(java.io.Reader reader,
                                       javax.script.ScriptContext context)
                                throws javax.script.ScriptException

      Note: always returns null due to Python limitations. (non-Javadoc)
      Specified by:
        `eval` in interface `javax.script.ScriptEngine`
      Parameters:
        `reader` - a `Reader` value
        `context` - a `ScriptContext` value
      Returns:
        an `Object` value
      Throws:
        `javax.script.ScriptException` - if an error occurs
      See Also:
        `ScriptEngine.eval(java.io.Reader, javax.script.ScriptContext)`

    - #### eval

          public java.lang.Object eval(java.io.Reader reader,
                                       javax.script.Bindings bindings)
                                throws javax.script.ScriptException

      Note: always returns null due to Python limitations. (non-Javadoc)
      Specified by:
        `eval` in interface `javax.script.ScriptEngine`
      Parameters:
        `reader` - a `Reader` value
        `bindings` - a `Bindings` value
      Returns:
        an `Object` value
      Throws:
        `javax.script.ScriptException` - if an error occurs
      See Also:
        `ScriptEngine.eval(java.io.Reader, javax.script.Bindings)`

    - #### eval

          public java.lang.Object eval(java.lang.String line)
                                throws javax.script.ScriptException

      Note: always returns null due to Python limitations. (non-Javadoc)
      Specified by:
        `eval` in interface `javax.script.ScriptEngine`
      Parameters:
        `line` - a `String` value
      Returns:
        an `Object` value
      Throws:
        `javax.script.ScriptException` - if an error occurs
      See Also:
        `ScriptEngine.eval(java.lang.String)`

    - #### eval

          public java.lang.Object eval(java.lang.String line,
                                       javax.script.ScriptContext context)
                                throws javax.script.ScriptException

      Describe `eval` method here.
      Specified by:
        `eval` in interface `javax.script.ScriptEngine`
      Parameters:
        `line` - a `String` value
        `context` - a `ScriptContext` value
      Returns:
        an `Object` value
      Throws:
        `javax.script.ScriptException` - if an error occurs

    - #### eval

          public java.lang.Object eval(java.lang.String line,
                                       javax.script.Bindings b)
                                throws javax.script.ScriptException

      Describe `eval` method here.
      Specified by:
        `eval` in interface `javax.script.ScriptEngine`
      Parameters:
        `line` - a `String` value
        `b` - a `Bindings` value
      Returns:
        an `Object` value
      Throws:
        `javax.script.ScriptException` - if an error occurs

    - #### getFactory

          public javax.script.ScriptEngineFactory getFactory()

      Describe `getFactory` method here.
      Specified by:
        `getFactory` in interface `javax.script.ScriptEngine`
      Returns:
        a `ScriptEngineFactory` value

    - #### setFactory

          protected void setFactory(javax.script.ScriptEngineFactory fact)

      For internal use.
      Parameters:
        `fact` - a `ScriptEngineFactory` value

    - #### get

          public java.lang.Object get(java.lang.String name)

      Describe `get` method here.
      Specified by:
        `get` in interface `javax.script.ScriptEngine`
      Parameters:
        `name` - a `String` value
      Returns:
        an `Object` value

    - #### put

          public void put(java.lang.String name,
                          java.lang.Object val)
                   throws java.lang.IllegalArgumentException

      Describe `put` method here.
      Specified by:
        `put` in interface `javax.script.ScriptEngine`
      Parameters:
        `name` - a `String` value
        `val` - an `Object` value
      Throws:
        `java.lang.IllegalArgumentException` - if an error occurs

    - #### getBindings

          public javax.script.Bindings getBindings(int scope)

      Describe `getBindings` method here.
      Specified by:
        `getBindings` in interface `javax.script.ScriptEngine`
      Parameters:
        `scope` - an `int` value
      Returns:
        a `Bindings` value

    - #### setBindings

          public void setBindings(javax.script.Bindings bindings,
                                  int scope)

      Describe `setBindings` method here.
      Specified by:
        `setBindings` in interface `javax.script.ScriptEngine`
      Parameters:
        `bindings` - a `Bindings` value
        `scope` - an `int` value

    - #### getContext

          public javax.script.ScriptContext getContext()

      Describe `getContext` method here.
      Specified by:
        `getContext` in interface `javax.script.ScriptEngine`
      Returns:
        a `ScriptContext` value

    - #### setContext

          public void setContext(javax.script.ScriptContext c)

      Describe `setContext` method here.
      Specified by:
        `setContext` in interface `javax.script.ScriptEngine`
      Parameters:
        `c` - a `ScriptContext` value

    - #### close

          public void close()

      You *must* close this
      Specified by:
        `close` in interface `java.lang.AutoCloseable`