# HG changeset patch # User Michael Van De Vanter # Date 1447287049 28800 # Node ID 3edc03012975d630e8b6add12c1e21fd1085498b # Parent 163fdf64587ddbd596e5f85a805c9a3369a343a9 Truffle/REPL debugger: remove disused class diff -r 163fdf64587d -r 3edc03012975 truffle/com.oracle.truffle.tools.debug.shell/src/com/oracle/truffle/tools/debug/shell/server/REPLServerContext.java --- a/truffle/com.oracle.truffle.tools.debug.shell/src/com/oracle/truffle/tools/debug/shell/server/REPLServerContext.java Wed Nov 11 15:59:56 2015 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,144 +0,0 @@ -/* - * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. Oracle designates this - * particular file as subject to the "Classpath" exception as provided - * by Oracle in the LICENSE file that accompanied this code. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - * or visit www.oracle.com if you need additional information or have any - * questions. - */ -package com.oracle.truffle.tools.debug.shell.server; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -import com.oracle.truffle.api.debug.Breakpoint; -import com.oracle.truffle.api.debug.Debugger; -import com.oracle.truffle.api.debug.SuspendedEvent; -import com.oracle.truffle.api.frame.FrameInstance; -import com.oracle.truffle.api.frame.MaterializedFrame; -import com.oracle.truffle.api.instrument.Visualizer; -import com.oracle.truffle.api.instrument.impl.DefaultVisualizer; -import com.oracle.truffle.api.nodes.Node; -import com.oracle.truffle.api.vm.PolyglotEngine; -import com.oracle.truffle.api.vm.PolyglotEngine.Language; -import com.oracle.truffle.tools.debug.shell.REPLMessage; - -public abstract class REPLServerContext { - - private final int level; - private final SuspendedEvent event; - - protected REPLServerContext(int level, SuspendedEvent event) { - this.level = level; - this.event = event; - } - - /** - * The nesting depth of this context in the current session. - */ - public int getLevel() { - return level; - } - - /** - * The AST node where execution is halted in this context. - */ - public Node getNodeAtHalt() { - return event.getNode(); - } - - /** - * Evaluates given code snippet in the context of currently suspended execution. - * - * @param code the snippet to evaluate - * @param frame null in case the evaluation should happen in top most frame, - * non-null value - * @return result of the evaluation - * @throws IOException if something goes wrong - */ - // public Object eval(String code, FrameInstance frame) throws IOException { - // return event.eval(code, frame); - // } - - /** - * The frame where execution is halted in this context. - */ - public MaterializedFrame getFrameAtHalt() { - return event.getFrame(); - } - - public abstract Language getLanguage(); - - public Visualizer getVisualizer() { - return new DefaultVisualizer(); - } - - public PolyglotEngine engine() { - throw new IllegalStateException(); - } - - protected abstract Debugger db(); - - /** - * Dispatches a REPL request to the appropriate handler. - */ - public abstract REPLMessage[] receive(REPLMessage request); - - public abstract void registerBreakpoint(Breakpoint breakpoint); - - public abstract Breakpoint findBreakpoint(int id); - - public abstract int getBreakpointID(Breakpoint breakpoint); - - /** - * Provides access to the execution stack. - * - * @return immutable list of stack elements - */ - public List getStack() { - List frames = new ArrayList<>(); - int frameCount = 1; - for (FrameInstance frameInstance : event.getStack()) { - if (frameCount == 1) { - frames.add(new FrameDebugDescription(frameCount, event.getNode(), frameInstance)); - } else { - frames.add(new FrameDebugDescription(frameCount, frameInstance.getCallNode(), frameInstance)); - } - frameCount++; - } - return Collections.unmodifiableList(frames); - } - - void prepareStepOut() { - event.prepareStepOut(); - } - - void prepareStepInto(int repeat) { - event.prepareStepInto(repeat); - } - - void prepareStepOver(int repeat) { - event.prepareStepOver(repeat); - } - - void prepareContinue() { - event.prepareContinue(); - } -}