ExecutionControl
interface and its generating class,
an implementation of the ExecutionControlProvider
interface, and installing it with
JShell.Builder.executionEngine(String)
other execution engines can be used. Where the passed String is an
ExecutionControl
spec.
The ExecutionControl
spec is the ExecutionControlProvider
name optionally followed by a parameter specification.
The syntax of the spec is:
spec := name : params | name name := identifier params := param , params | param | param := identifier ( value )Where 'name' is the
ExecutionControlProvider
name.
Where 'param' is a Map key from
ExecutionControlProvider.defaultParameters()
and the parenthesized
value; See, for example,
JdiExecutionControlProvider
.
Where 'identifier' is a sequence of
Java identifier part characters from the Basic Multilingual Plane.
For example:
for execution implementation support
Interface | Description |
---|---|
ExecutionControl |
This interface specifies the functionality that must provided to implement a
pluggable JShell execution engine.
|
ExecutionControlProvider |
The provider used by JShell to generate the execution engine needed to
evaluate Snippets.
|
ExecutionEnv |
Functionality made available to a pluggable JShell execution engine.
|
Class | Description |
---|---|
ExecutionControl.ClassBytecodes |
Bundles class name with class bytecodes.
|
Exception | Description |
---|---|
ExecutionControl.ClassInstallException |
A class install (load or redefine) encountered a problem.
|
ExecutionControl.EngineTerminationException |
Unbidden execution engine termination has occurred.
|
ExecutionControl.ExecutionControlException |
The abstract base of all
ExecutionControl exceptions. |
ExecutionControl.InternalException |
An internal problem has occurred.
|
ExecutionControl.NotImplementedException |
The command is not implemented.
|
ExecutionControl.ResolutionException |
An exception indicating that a
DeclarationSnippet with unresolved
references has been encountered. |
ExecutionControl.RunException |
The abstract base of of exceptions specific to running user code.
|
ExecutionControl.StoppedException |
An exception indicating that an
ExecutionControl.invoke(java.lang.String, java.lang.String)
(or theoretically a
ExecutionControl.varValue(java.lang.String, java.lang.String) )
has been interrupted by a ExecutionControl.stop() . |
ExecutionControl.UserException |
A 'normal' user exception occurred.
|
SPIResolutionException |
The construction and throw of this exception is embedded in code generated by
the JShell core implementation in such a way that, upon executing a
RECOVERABLE_DEFINED
user method, this exception is thrown. |
Submit a bug or feature
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 2015, 2017, Oracle and/or its affiliates. 500 Oracle Parkway
Redwood Shores, CA 94065 USA. All rights reserved.
DRAFT 9-Ubuntu+0-9b153-1