home *** CD-ROM | disk | FTP | other *** search
- package netscape.debug;
-
- public abstract class StackFrameInfo {
- ThreadState threadState;
- StackFrameInfo caller;
-
- protected StackFrameInfo(ThreadState var1) {
- this.threadState = var1;
- }
-
- public boolean isValid() {
- return this.threadState.isValid();
- }
-
- public synchronized StackFrameInfo getCaller() throws InvalidInfoException {
- if (this.caller == null) {
- this.caller = this.getCaller0();
- }
-
- if (!this.isValid()) {
- throw new InvalidInfoException("invalid StackFrameInfo");
- } else {
- return this.caller;
- }
- }
-
- protected abstract StackFrameInfo getCaller0() throws InvalidInfoException;
-
- public Thread getThread() {
- return this.threadState.getThread();
- }
-
- public abstract PC getPC() throws InvalidInfoException;
- }
-