@Override public Object getNewValue() { Breakpoint breakpoint = (Breakpoint) super.getNewValue(); if (breakpoint != null) { breakpoint = breakpoint.getROWrapper(); } return breakpoint; }
@Override public Object getOldValue() { Breakpoint breakpoint = (Breakpoint) super.getOldValue(); if (breakpoint != null) { breakpoint = breakpoint.getROWrapper(); } return breakpoint; }
void disposeBreakpoint(Breakpoint breakpoint) { boolean removed; synchronized (this) { removed = breakpoints.remove(breakpoint); } if (removed) { for (Consumer<Breakpoint> listener : breakpointRemovedListeners) { listener.accept(breakpoint.getROWrapper()); } } if (Debugger.TRACE) { trace("disposed debugger breakpoint %s", breakpoint); } }
/** * Returns all breakpoints {@link #install(com.oracle.truffle.api.debug.Breakpoint) installed} * in this debugger instance, in the install order. The returned list contains a current * snapshot of breakpoints, those that were {@link Breakpoint#dispose() disposed} are not * included. * <p> * It's not possible to modify state of breakpoints returned from this list, or from methods on * listeners, they are not {@link Breakpoint#isModifiable() modifiable}. An attempt to modify * breakpoints state using any of their set method, or an attempt to dispose such breakpoints, * fails with an {@link IllegalStateException}. Use the original installed breakpoint instance * to change breakpoint state or dispose the breakpoint. * * @since 0.27 * @see DebuggerSession#getBreakpoints() */ public List<Breakpoint> getBreakpoints() { List<Breakpoint> bpts; synchronized (this) { bpts = new ArrayList<>(this.breakpoints.size()); for (Breakpoint b : this.breakpoints) { bpts.add(b.getROWrapper()); } } return Collections.unmodifiableList(bpts); }
/** * Returns all breakpoints {@link #install(com.oracle.truffle.api.debug.Breakpoint) installed} * in this debugger instance, in the install order. The returned list contains a current * snapshot of breakpoints, those that were {@link Breakpoint#dispose() disposed} are not * included. * <p> * It's not possible to modify state of breakpoints returned from this list, or from the * associated property change events, they are not {@link Breakpoint#isModifiable() modifiable}. * An attempt to modify breakpoints state using any of their set method, or an attempt to * dispose such breakpoints, fails with an {@link IllegalStateException}. Use the original * installed breakpoint instance to change breakpoint state or dispose the breakpoint. * * @since 0.27 * @see DebuggerSession#getBreakpoints() */ public List<Breakpoint> getBreakpoints() { List<Breakpoint> bpts; synchronized (this) { bpts = new ArrayList<>(this.breakpoints.size()); for (Breakpoint b : this.breakpoints) { bpts.add(b.getROWrapper()); } } return Collections.unmodifiableList(bpts); }
listener.accept(breakpoint.getROWrapper());
breaks = new ArrayList<>(); breaks.add(breakpoint.isGlobal() ? breakpoint.getROWrapper() : breakpoint); fb = fb.getROWrapper();
Breakpoint fb = conditionFailure.getBreakpoint(); if (fb.isGlobal()) { fb = fb.getROWrapper();
breaks = new ArrayList<>(); breaks.add(breakpoint.isGlobal() ? breakpoint.getROWrapper() : breakpoint); fb = fb.getROWrapper();