1
/*******************************************************************************
2
* Copyright (c) 2000, 2006 QNX Software Systems and others.
3
* All rights reserved. This program and the accompanying materials
4
* are made available under the terms of the Eclipse Public License v1.0
5
* which accompanies this distribution, and is available at
6
* http://www.eclipse.org/legal/epl-v10.html
9
* QNX Software Systems - Initial API and implementation
10
*******************************************************************************/
11
package org.eclipse.cdt.utils.debug;
13
public interface IDebugEntryRequestor {
16
* Entering a compilation unit.
18
* @param address start of address of the cu.
20
void enterCompilationUnit(String name, long address);
23
* Exit the current compilation unit.
24
* @param address end of compilation unit.
26
void exitCompilationUnit(long address);
29
* Entering new include file in a compilation unit.
32
void enterInclude(String name);
35
* Exit the current include file.
41
* @param name of the function/method
42
* @param type type of the return value.
43
* @param isGlobal return the visiblity of the function.
44
* @param address the start address of the function.
46
void enterFunction(String name, DebugType type, boolean isGlobal, long address);
49
* Exit the current function.
50
* @param address the address where the function ends.
52
void exitFunction(long address);
55
* Enter a code block in a function.
56
* @param offset address of the block starts relative to the current function.
58
void enterCodeBlock(long offset);
61
* Exit of the current code block.
62
* @param offset the address of which the blocks ends relative to the current function.
64
void exitCodeBlock(long offset);
67
* Statement in the compilation unit with a given address.
68
* @param line lineno of the statement relative to the current compilation unit.
69
* @param offset addres of the statement relative to the current function.
71
void acceptStatement(int line, long address);
76
void acceptIntegerConst(String name, int value);
79
* floating point constant.
83
void acceptFloatConst(String name, double value);
86
* Type constant: "const b = 0", b is a type enum.
91
void acceptTypeConst(String name, DebugType type, int value);
98
void acceptCaughtException(String name, DebugType type, long address);
101
* Accept a parameter for the current function.
102
* @param name of the parameter
103
* @param type of the parameter
104
* @param kind of the parameter
105
* @param offset address of the parameter relative to the current function.
107
void acceptParameter(String name, DebugType type, DebugParameterKind kind, long offset);
116
void acceptVariable(String name, DebugType type, DebugVariableKind kind, long address);
120
* IDebugEntryRequestor
121
* @param name new name
124
void acceptTypeDef(String name, DebugType type);