2009-06-20 21:20:49 +04:00
|
|
|
/*
|
|
|
|
* Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
|
|
|
|
* Distributed under the terms of the MIT License.
|
|
|
|
*/
|
|
|
|
#ifndef FUNCTION_DEBUG_INFO_H
|
|
|
|
#define FUNCTION_DEBUG_INFO_H
|
|
|
|
|
|
|
|
#include <Referenceable.h>
|
|
|
|
|
2009-06-26 19:11:56 +04:00
|
|
|
#include "SourceLocation.h"
|
2009-06-30 02:38:15 +04:00
|
|
|
#include "Types.h"
|
2009-06-26 19:11:56 +04:00
|
|
|
|
|
|
|
|
2009-07-08 00:47:39 +04:00
|
|
|
class BString;
|
2009-07-03 04:56:39 +04:00
|
|
|
class LocatableFile;
|
2009-06-28 01:09:21 +04:00
|
|
|
class SpecificImageDebugInfo;
|
2009-06-20 21:20:49 +04:00
|
|
|
|
|
|
|
|
2010-12-16 16:50:30 +03:00
|
|
|
class FunctionDebugInfo : public BReferenceable {
|
2009-06-26 19:11:56 +04:00
|
|
|
public:
|
|
|
|
FunctionDebugInfo();
|
2009-06-20 21:20:49 +04:00
|
|
|
virtual ~FunctionDebugInfo();
|
|
|
|
|
2009-06-28 01:09:21 +04:00
|
|
|
virtual SpecificImageDebugInfo* GetSpecificImageDebugInfo() const = 0;
|
2009-06-20 21:20:49 +04:00
|
|
|
virtual target_addr_t Address() const = 0;
|
|
|
|
virtual target_size_t Size() const = 0;
|
2009-07-08 00:47:39 +04:00
|
|
|
virtual const BString& Name() const = 0;
|
|
|
|
virtual const BString& PrettyName() const = 0;
|
2009-06-26 19:11:56 +04:00
|
|
|
|
2013-07-13 04:31:40 +04:00
|
|
|
virtual bool IsMain() const = 0;
|
|
|
|
|
2009-07-03 04:56:39 +04:00
|
|
|
virtual LocatableFile* SourceFile() const = 0;
|
2009-06-26 19:11:56 +04:00
|
|
|
virtual SourceLocation SourceStartLocation() const = 0;
|
|
|
|
virtual SourceLocation SourceEndLocation() const = 0;
|
2009-06-20 21:20:49 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif // FUNCTION_DEBUG_INFO_H
|