public class BasicCDebugInfoDataBase extends java.lang.Object implements CDebugInfoDataBase
Constructor and Description |
---|
BasicCDebugInfoDataBase() |
Modifier and Type | Method and Description |
---|---|
void |
addBlock(java.lang.Object key,
BlockSym block)
Add a BlockSym to the debug information database.
|
void |
addGlobalSym(GlobalSym sym) |
void |
addLineNumberInfo(BasicLineNumberInfo info) |
void |
addType(java.lang.Object lazyKey,
Type type)
Add a type which may later in construction be referred to via a
LazyType with this key.
|
void |
beginConstruction()
Supports lazy instantiation and references between types and
symbols via insertion using arbitrary Object keys that are
wrapped by LazyTypes.
|
BlockSym |
debugInfoForPC(Address pc)
Return debug info (closest lexically-enclosing block) for
current program counter.
|
void |
endConstruction() |
void |
iterate(LineNumberVisitor v)
Iteration through all line number information in this
database.
|
void |
iterate(TypeVisitor v)
Iteration through all types
|
LineNumberInfo |
lineNumberForPC(Address pc)
Returns line number information for the given PC, including
source file name (not specified whether this is an absolute or
relative path) and start and end PCs for this line.
|
GlobalSym |
lookupSym(java.lang.String name)
Look up global or module-local symbol by name.
|
Type |
lookupType(java.lang.String name)
Name-to-type mapping
|
Type |
lookupType(java.lang.String name,
int cvAttributes)
Name-to-type mapping with const/volatile qualifications
|
void |
resolve(ResolveListener listener) |
Sym |
resolveSym(Sym containingSymbol,
Sym targetSym,
ResolveListener listener,
java.lang.String detail)
Intended only to be usd by the BasicSym implementation.
|
Type |
resolveType(Sym containingSymbol,
Type targetType,
ResolveListener listener,
java.lang.String detail)
Intended only to be usd by the BasicSym implementation.
|
Type |
resolveType(Type containingType,
Type targetType,
ResolveListener listener,
java.lang.String detail)
Intended only to be used by the BasicType implementation.
|
public void beginConstruction()
public void addType(java.lang.Object lazyKey, Type type)
public void resolve(ResolveListener listener)
public void endConstruction()
public Type lookupType(java.lang.String name)
CDebugInfoDataBase
lookupType
in interface CDebugInfoDataBase
public Type lookupType(java.lang.String name, int cvAttributes)
CDebugInfoDataBase
lookupType
in interface CDebugInfoDataBase
public void iterate(TypeVisitor v)
CDebugInfoDataBase
iterate
in interface CDebugInfoDataBase
public void addBlock(java.lang.Object key, BlockSym block)
public void addGlobalSym(GlobalSym sym)
public BlockSym debugInfoForPC(Address pc)
CDebugInfoDataBase
debugInfoForPC
in interface CDebugInfoDataBase
public GlobalSym lookupSym(java.lang.String name)
CDebugInfoDataBase
lookupSym
in interface CDebugInfoDataBase
public void addLineNumberInfo(BasicLineNumberInfo info)
public LineNumberInfo lineNumberForPC(Address pc) throws DebuggerException
CDebugInfoDataBase
lineNumberForPC
in interface CDebugInfoDataBase
DebuggerException
public void iterate(LineNumberVisitor v)
CDebugInfoDataBase
iterate
in interface CDebugInfoDataBase
public Type resolveType(Type containingType, Type targetType, ResolveListener listener, java.lang.String detail)
public Type resolveType(Sym containingSymbol, Type targetType, ResolveListener listener, java.lang.String detail)
public Sym resolveSym(Sym containingSymbol, Sym targetSym, ResolveListener listener, java.lang.String detail)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.