gnu.gcj.jvmti

Class Breakpoint

Known Direct Subclasses:
NormalBreakpoint

public abstract class Breakpoint
extends Object

Base class representing a type of breakpoint in the interpreter. This class deals with saving insns and installing and uninstalling insns in the interpreter for all breakpoint classes.

Field Summary

protected long
location
protected long
method

Constructor Summary

Breakpoint()
The basic constructor.
Breakpoint(long method, long location)
Constructs a new Breakpoint

Method Summary

abstract void
execute()
Execute the actions of this breakpoint
RawDataManaged
getInsn()
Returns the original instruction at the location where this breakpoint was set
void
install()
Installs the breakpoint into the interpreter
void
remove()
Removes the breakpoint from the interpreter, re-installing the original instruction.

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

location

protected long location

method

protected long method

Constructor Details

Breakpoint

public Breakpoint()
The basic constructor. Object is special, because it has no superclass, so there is no call to super().

Breakpoint

public Breakpoint(long method,
                  long location)
Constructs a new Breakpoint
Parameters:
method - the method in which to set the breakpoint
location - the location at which to set the breakpoint

Method Details

execute

public abstract void execute()
Execute the actions of this breakpoint

getInsn

public RawDataManaged getInsn()
Returns the original instruction at the location where this breakpoint was set

install

public void install()
Installs the breakpoint into the interpreter

remove

public void remove()
Removes the breakpoint from the interpreter, re-installing the original instruction.

Copyright (C) 2006, 2007 Free Software Foundation This file is part of libgcj. This software is copyrighted work licensed under the terms of the Libgcj License. Please consult the file "LIBGCJ_LICENSE" for details.