LocalExecutionControl (Java SE 17 & JDK 17)
Description: declaration: module: jdk.jshell, package: jdk.jshell.execution, class: LocalExecutionControl
Keywords: jdk.jshell.execution.LocalExecutionControl class

Module jdk.jshell
Package jdk.jshell.execution

# Class LocalExecutionControl

java.lang.Object
jdk.jshell.execution.DirectExecutionControl
jdk.jshell.execution.LocalExecutionControl

All Implemented Interfaces:
  `AutoCloseable`, `ExecutionControl`

public class LocalExecutionControl extends DirectExecutionControl
An implementation of `ExecutionControl` which executes in the same JVM as the JShell-core.

Since:
  9

- ## Nested Class Summary

  ## Nested classes/interfaces declared in interface jdk.jshell.spi.ExecutionControl

  `ExecutionControl.ClassBytecodes, ExecutionControl.ClassInstallException, ExecutionControl.EngineTerminationException, ExecutionControl.ExecutionControlException, ExecutionControl.InternalException, ExecutionControl.NotImplementedException, ExecutionControl.ResolutionException, ExecutionControl.RunException, ExecutionControl.StoppedException, ExecutionControl.UserException`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `LocalExecutionControl()`
  Create an instance using the default class loading.
  `LocalExecutionControl(LoaderDelegate loaderDelegate)`
  Creates an instance, delegating loader operations to the specified delegate.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected void`
  `clientCodeEnter()`
  Marks entry into user code.
  `protected void`
  `clientCodeLeave()`
  Marks departure from user code.

  ### Methods declared in class jdk.jshell.execution.DirectExecutionControl

  `addToClasspath, classesRedefined, close, extensionCommand, findClass, invoke, invoke, load, redefine, stop, throwConvertedInvocationException, throwConvertedOtherException, valueString, varValue`

  ### Methods declared in class java.lang.Object

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

- ## Constructor Details

  - ### LocalExecutionControl

    public LocalExecutionControl(LoaderDelegate loaderDelegate)
    Creates an instance, delegating loader operations to the specified delegate.
    Parameters:
      `loaderDelegate` - the delegate to handle loading classes

  - ### LocalExecutionControl

    public LocalExecutionControl()
    Create an instance using the default class loading.

- ## Method Details

  - ### clientCodeEnter

    protected void clientCodeEnter()
    Description copied from class: `DirectExecutionControl`
    Marks entry into user code.
    Overrides:
      `clientCodeEnter` in class `DirectExecutionControl`

  - ### clientCodeLeave

    protected void clientCodeLeave()
    Description copied from class: `DirectExecutionControl`
    Marks departure from user code.
    Overrides:
      `clientCodeLeave` in class `DirectExecutionControl`