langtools/src/jdk.jshell/share/classes/module-info.java
author rfield
Wed, 21 Dec 2016 20:14:39 -0800
changeset 42969 a48d4f74d322
parent 42843 a8d83044a192
child 43577 1a1b1242f7aa
permissions -rw-r--r--
8168615: JShell API: jdk.jshell.spi should be a pluggable ServiceLoader SPI Reviewed-by: jlahoda
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
36526
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
     1
/*
41934
a4da50688dc7 8167636: jshell tool: Edit Pad should be in its own module
rfield
parents: 40588
diff changeset
     2
 * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
36526
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
     4
 *
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
     7
 * published by the Free Software Foundation.  Oracle designates this
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
     8
 * particular file as subject to the "Classpath" exception as provided
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
     9
 * by Oracle in the LICENSE file that accompanied this code.
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    10
 *
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    11
 * This code is distributed in the hope that it will be useful, but WITHOUT
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    12
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    13
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    14
 * version 2 for more details (a copy is included in the LICENSE file that
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    15
 * accompanied this code).
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    16
 *
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    17
 * You should have received a copy of the GNU General Public License version
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    18
 * 2 along with this work; if not, write to the Free Software Foundation,
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    19
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    20
 *
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    21
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    22
 * or visit www.oracle.com if you need additional information or have any
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    23
 * questions.
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    24
 */
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    25
39590
5a2a47b882ec 8160035: JShell API: Add javadoc overview and package files
rfield
parents: 38535
diff changeset
    26
/**
42843
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    27
 * This module provides support for
39590
5a2a47b882ec 8160035: JShell API: Add javadoc overview and package files
rfield
parents: 38535
diff changeset
    28
 * Java™ Programming Language 'snippet' evaluating tools, such as
5a2a47b882ec 8160035: JShell API: Add javadoc overview and package files
rfield
parents: 38535
diff changeset
    29
 * Read-Eval-Print Loops (REPLs).
42843
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    30
 * Separate packages support building tools, configuring the execution of tools,
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    31
 * and programmatically launching the existing Java™ shell tool.
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    32
 * <p>
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    33
 *     The {@link jdk.jshell} is the package for creating 'snippet' evaluating tools.
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    34
 *     Generally, this is only package that would be needed for creating tools.
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    35
 * </p>
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    36
 * <p>
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    37
 *     The {@link jdk.jshell.spi} package specifies a Service Provider Interface (SPI)
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    38
 *     for defining execution engine implementations for tools based on the
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    39
 *     {@link jdk.jshell} API. The {@link jdk.jshell.execution} package provides
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    40
 *     standard implementations of {@link jdk.jshell.spi} interfaces and supporting code.  It
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    41
 *     also serves as a library of functionality for defining new execution engine
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    42
 *     implementations.
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    43
 * </p>
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    44
 * <p>
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    45
 *     The {@link jdk.jshell.tool} supports programmatically launching the
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    46
 *     "jshell tool".
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    47
 * </p>
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    48
 * <p>
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    49
 *     The {@link jdk.jshell.execution} package contains implementations of the
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    50
 *     interfaces in {@link jdk.jshell.spi}.  Otherwise, the four packages are
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    51
 *     independent, operate at different levels, and do not share functionality or
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    52
 *     definitions.
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    53
 * </p>
39590
5a2a47b882ec 8160035: JShell API: Add javadoc overview and package files
rfield
parents: 38535
diff changeset
    54
 */
36526
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    55
module jdk.jshell {
42407
f3702cff2933 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41934
diff changeset
    56
    requires transitive java.compiler;
42413
c698a1e60c0b 8167185: JShell API: Exported elements referring to inaccessible types in jdk.jshell
rfield
parents: 42407
diff changeset
    57
    requires transitive jdk.jdi;
42843
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    58
    requires transitive java.prefs;
42969
a48d4f74d322 8168615: JShell API: jdk.jshell.spi should be a pluggable ServiceLoader SPI
rfield
parents: 42843
diff changeset
    59
    requires java.logging;
36526
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    60
    requires jdk.compiler;
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    61
    requires jdk.internal.le;
41934
a4da50688dc7 8167636: jshell tool: Edit Pad should be in its own module
rfield
parents: 40588
diff changeset
    62
    requires jdk.internal.ed;
40588
b5c32bfa9710 8160089: jshell tool: use new double-dash long-form command-line options
rfield
parents: 39590
diff changeset
    63
    requires jdk.internal.opt;
36526
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    64
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    65
    exports jdk.jshell;
38535
4a25025e0b0d 8156101: JShell SPI: Provide a pluggable execution control SPI
rfield
parents: 36526
diff changeset
    66
    exports jdk.jshell.spi;
39590
5a2a47b882ec 8160035: JShell API: Add javadoc overview and package files
rfield
parents: 38535
diff changeset
    67
    exports jdk.jshell.execution;
42843
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    68
    exports jdk.jshell.tool;
41934
a4da50688dc7 8167636: jshell tool: Edit Pad should be in its own module
rfield
parents: 40588
diff changeset
    69
42969
a48d4f74d322 8168615: JShell API: jdk.jshell.spi should be a pluggable ServiceLoader SPI
rfield
parents: 42843
diff changeset
    70
    uses jdk.jshell.spi.ExecutionControlProvider;
41934
a4da50688dc7 8167636: jshell tool: Edit Pad should be in its own module
rfield
parents: 40588
diff changeset
    71
    uses jdk.internal.editor.spi.BuildInEditorProvider;
42843
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    72
a8d83044a192 8170162: jshell tool: no mechanism to programmatically launch
rfield
parents: 42413
diff changeset
    73
    provides javax.tools.Tool with jdk.internal.jshell.tool.JShellToolProvider;
42969
a48d4f74d322 8168615: JShell API: jdk.jshell.spi should be a pluggable ServiceLoader SPI
rfield
parents: 42843
diff changeset
    74
    provides jdk.jshell.spi.ExecutionControlProvider
a48d4f74d322 8168615: JShell API: jdk.jshell.spi should be a pluggable ServiceLoader SPI
rfield
parents: 42843
diff changeset
    75
        with jdk.jshell.execution.JdiExecutionControlProvider;
a48d4f74d322 8168615: JShell API: jdk.jshell.spi should be a pluggable ServiceLoader SPI
rfield
parents: 42843
diff changeset
    76
    provides jdk.jshell.spi.ExecutionControlProvider
a48d4f74d322 8168615: JShell API: jdk.jshell.spi should be a pluggable ServiceLoader SPI
rfield
parents: 42843
diff changeset
    77
        with jdk.jshell.execution.LocalExecutionControlProvider;
a48d4f74d322 8168615: JShell API: jdk.jshell.spi should be a pluggable ServiceLoader SPI
rfield
parents: 42843
diff changeset
    78
    provides jdk.jshell.spi.ExecutionControlProvider
a48d4f74d322 8168615: JShell API: jdk.jshell.spi should be a pluggable ServiceLoader SPI
rfield
parents: 42843
diff changeset
    79
        with jdk.jshell.execution.FailOverExecutionControlProvider;
36526
3b41f1c69604 8142968: Module System implementation
alanb
parents:
diff changeset
    80
}