mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-13 18:49:19 +02:00
Debugger: Moved dsState to new unit
This commit is contained in:
parent
e4e8972b23
commit
8d3d08ae4c
@ -9,15 +9,15 @@ unit DbgIntfBaseTypes;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils;
|
Classes, SysUtils, LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
(* TDBGPtr
|
(* TDBGPtr
|
||||||
datatype pointing to data on the target
|
datatype pointing to data on the target
|
||||||
*)
|
*)
|
||||||
TDBGPtr = type QWord;
|
TDBGPtr = LazDebuggerIntfBaseTypes.TDBGPtr;
|
||||||
PDBGPtr = ^TDBGPtr;
|
PDBGPtr = LazDebuggerIntfBaseTypes.PDBGPtr;
|
||||||
TDBGPtrArray = Array of TDBGPtr;
|
TDBGPtrArray = LazDebuggerIntfBaseTypes.TDBGPtrArray;
|
||||||
|
|
||||||
(* TDbgSymbolKind
|
(* TDbgSymbolKind
|
||||||
Enum of types that a value can have.
|
Enum of types that a value can have.
|
||||||
|
@ -51,7 +51,8 @@ uses
|
|||||||
LazClasses, {$ifdef FORCE_LAZLOGGER_DUMMY} LazLoggerDummy {$else} LazLoggerBase {$endif}, LazFileUtils, LazStringUtils, Maps, LazMethodList,
|
LazClasses, {$ifdef FORCE_LAZLOGGER_DUMMY} LazLoggerDummy {$else} LazLoggerBase {$endif}, LazFileUtils, LazStringUtils, Maps, LazMethodList,
|
||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfBaseTypes, DbgIntfMiscClasses, DbgIntfPseudoTerminal,
|
DbgIntfBaseTypes, DbgIntfMiscClasses, DbgIntfPseudoTerminal,
|
||||||
DbgIntfCommonStrings, LazDebuggerIntf, LazDebuggerTemplate;
|
DbgIntfCommonStrings, LazDebuggerIntf, LazDebuggerTemplate,
|
||||||
|
LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
const
|
const
|
||||||
DebuggerIntfVersion = 0;
|
DebuggerIntfVersion = 0;
|
||||||
|
@ -47,7 +47,7 @@ uses
|
|||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfDebuggerBase,
|
DbgIntfDebuggerBase,
|
||||||
// LazDebuggerGdbmi
|
// LazDebuggerGdbmi
|
||||||
DebugUtils, LazDebuggerIntf;
|
DebugUtils, LazDebuggerIntf, LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -64,7 +64,7 @@ uses
|
|||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfBaseTypes, DbgIntfDebuggerBase,
|
DbgIntfBaseTypes, DbgIntfDebuggerBase,
|
||||||
// CmdLineDebuggerBase
|
// CmdLineDebuggerBase
|
||||||
DebuggerPropertiesBase, LazDebuggerIntf,
|
DebuggerPropertiesBase, LazDebuggerIntf, LazDebuggerIntfBaseTypes,
|
||||||
{$IFDEF DBG_ENABLE_TERMINAL}
|
{$IFDEF DBG_ENABLE_TERMINAL}
|
||||||
DbgIntfPseudoTerminal,
|
DbgIntfPseudoTerminal,
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
|
@ -35,7 +35,7 @@ uses
|
|||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfDebuggerBase,
|
DbgIntfDebuggerBase,
|
||||||
// LazDebuggerGdbmi
|
// LazDebuggerGdbmi
|
||||||
DebugUtils, LazDebuggerIntf;
|
DebugUtils, LazDebuggerIntf, LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@ uses
|
|||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfDebuggerBase,
|
DbgIntfDebuggerBase,
|
||||||
// CmdLineDebuggerBase
|
// CmdLineDebuggerBase
|
||||||
DebuggerPropertiesBase, LazDebuggerIntf,
|
DebuggerPropertiesBase, LazDebuggerIntf, LazDebuggerIntfBaseTypes,
|
||||||
// LazDebuggerGdbmi
|
// LazDebuggerGdbmi
|
||||||
GDBMIDebugger, GDBMIMiscClasses, GdbmiStringConstants;
|
GDBMIDebugger, GDBMIMiscClasses, GdbmiStringConstants;
|
||||||
|
|
||||||
|
@ -47,7 +47,8 @@ uses
|
|||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfDebuggerBase,
|
DbgIntfDebuggerBase,
|
||||||
// LazDebuggerGdbmi
|
// LazDebuggerGdbmi
|
||||||
GDBMIDebugger, GdbmiStringConstants, LazDebuggerIntf;
|
GDBMIDebugger, GdbmiStringConstants, LazDebuggerIntf,
|
||||||
|
LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -8,7 +8,8 @@ uses
|
|||||||
Classes, SysUtils, FileUtil, fpcunit, testregistry, LCLProc, LazLogger,
|
Classes, SysUtils, FileUtil, fpcunit, testregistry, LCLProc, LazLogger,
|
||||||
LazFileUtils, DbgIntfDebuggerBase, Dialogs, Forms, RegExpr, GDBMIDebugger,
|
LazFileUtils, DbgIntfDebuggerBase, Dialogs, Forms, RegExpr, GDBMIDebugger,
|
||||||
TestDbgConfig, TestDbgTestSuites, TTestDbgExecuteables, TTestDebuggerClasses,
|
TestDbgConfig, TestDbgTestSuites, TTestDbgExecuteables, TTestDebuggerClasses,
|
||||||
TestDbgCompilerProcess, TestDbgControl, TestOutputLogger, LazDebuggerIntf; // , FpGdbmiDebugger;
|
TestDbgCompilerProcess, TestDbgControl, TestOutputLogger, LazDebuggerIntf,
|
||||||
|
LazDebuggerIntfBaseTypes; // , FpGdbmiDebugger;
|
||||||
// EnvironmentOpts, ExtToolDialog, TransferMacros,
|
// EnvironmentOpts, ExtToolDialog, TransferMacros,
|
||||||
|
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, RegExpr, TestBase, LazLoggerBase, DbgIntfBaseTypes,
|
Classes, SysUtils, RegExpr, TestBase, LazLoggerBase, DbgIntfBaseTypes,
|
||||||
DbgIntfDebuggerBase, TestDbgConfig, TTestDebuggerClasses, IdeDebuggerBase,
|
DbgIntfDebuggerBase, TestDbgConfig, TTestDebuggerClasses, IdeDebuggerBase,
|
||||||
LazDebuggerIntf;
|
IdeDebuggerWatchResult, LazDebuggerIntf, LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -7,7 +7,8 @@ interface
|
|||||||
uses
|
uses
|
||||||
SysUtils, fpcunit, testutils, testregistry, TestBase, GDBMIDebugger, LCLProc,
|
SysUtils, fpcunit, testutils, testregistry, TestBase, GDBMIDebugger, LCLProc,
|
||||||
FileUtil, LazUTF8, DbgIntfDebuggerBase, TestDbgControl, TestDbgTestSuites,
|
FileUtil, LazUTF8, DbgIntfDebuggerBase, TestDbgControl, TestDbgTestSuites,
|
||||||
TestDbgConfig, TestDbgCompilerProcess, LazDebuggerIntf, TestWatches;
|
TestDbgConfig, TestDbgCompilerProcess, LazDebuggerIntf,
|
||||||
|
LazDebuggerIntfBaseTypes, TestWatches;
|
||||||
|
|
||||||
const
|
const
|
||||||
BREAK_LINE_ARGV = 40;
|
BREAK_LINE_ARGV = 40;
|
||||||
|
@ -7,8 +7,8 @@ interface
|
|||||||
uses
|
uses
|
||||||
SysUtils, fpcunit, testutils, testregistry, DbgIntfBaseTypes,
|
SysUtils, fpcunit, testutils, testregistry, DbgIntfBaseTypes,
|
||||||
DbgIntfDebuggerBase, DbgIntfMiscClasses, TestBase, GDBMIDebugger,
|
DbgIntfDebuggerBase, DbgIntfMiscClasses, TestBase, GDBMIDebugger,
|
||||||
TestDbgControl, TestDbgTestSuites, TestDbgConfig, LazDebuggerIntf, LCLProc,
|
TestDbgControl, TestDbgTestSuites, TestDbgConfig, LazDebuggerIntf,
|
||||||
TestWatches;
|
LazDebuggerIntfBaseTypes, LCLProc, TestWatches;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, fpcunit, testutils, testregistry, LCLProc,
|
Classes, SysUtils, fpcunit, testutils, testregistry, LCLProc,
|
||||||
DbgIntfBaseTypes, DbgIntfDebuggerBase, GDBMIDebugger, TestBase, maps,
|
DbgIntfBaseTypes, DbgIntfDebuggerBase, GDBMIDebugger, TestBase, maps,
|
||||||
TTestDebuggerClasses, LazDebuggerIntf;
|
TTestDebuggerClasses, LazDebuggerIntf, LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
TTestDisAssRegion = record
|
TTestDisAssRegion = record
|
||||||
|
@ -7,7 +7,8 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, sysutils, fpcunit, testutils, testregistry, TestBase, GDBMIDebugger,
|
Classes, sysutils, fpcunit, testutils, testregistry, TestBase, GDBMIDebugger,
|
||||||
LCLProc, DbgIntfDebuggerBase, TestDbgControl, TestDbgTestSuites,
|
LCLProc, DbgIntfDebuggerBase, TestDbgControl, TestDbgTestSuites,
|
||||||
TestDbgConfig, TestCommonSources, TestOutputLogger, LazDebuggerIntf;
|
TestDbgConfig, TestCommonSources, TestOutputLogger, LazDebuggerIntf,
|
||||||
|
LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ uses
|
|||||||
Classes, SysUtils, fpcunit, testutils, testregistry, RegExpr,
|
Classes, SysUtils, fpcunit, testutils, testregistry, RegExpr,
|
||||||
DbgIntfBaseTypes, DbgIntfDebuggerBase, TestBase, GDBMIDebugger, TestDbgConfig,
|
DbgIntfBaseTypes, DbgIntfDebuggerBase, TestBase, GDBMIDebugger, TestDbgConfig,
|
||||||
TestDbgControl, TTestDbgExecuteables, TestDbgTestSuites, LazDebuggerIntf,
|
TestDbgControl, TTestDbgExecuteables, TestDbgTestSuites, LazDebuggerIntf,
|
||||||
LCLProc, TestWatchUtils, IdeDebuggerBase;
|
LazDebuggerIntfBaseTypes, LCLProc, TestWatchUtils, IdeDebuggerBase;
|
||||||
|
|
||||||
const
|
const
|
||||||
BREAK_LINE_FOOFUNC_NEST = 206;
|
BREAK_LINE_FOOFUNC_NEST = 206;
|
||||||
|
@ -35,7 +35,7 @@ uses
|
|||||||
Classes, {$IfDef WIN64}windows,{$EndIf} SysUtils, fgl, math, process,
|
Classes, {$IfDef WIN64}windows,{$EndIf} SysUtils, fgl, math, process,
|
||||||
Forms, Dialogs, syncobjs,
|
Forms, Dialogs, syncobjs,
|
||||||
Maps, LazLoggerBase, LazUTF8, lazCollections,
|
Maps, LazLoggerBase, LazUTF8, lazCollections,
|
||||||
DbgIntfBaseTypes, DbgIntfDebuggerBase,
|
DbgIntfDebuggerBase, LazDebuggerIntfBaseTypes,
|
||||||
FpDebugDebuggerUtils, FpDebugDebuggerWorkThreads, LazDebuggerIntf,
|
FpDebugDebuggerUtils, FpDebugDebuggerWorkThreads, LazDebuggerIntf,
|
||||||
// FpDebug
|
// FpDebug
|
||||||
{$IFDEF FPDEBUG_THREAD_CHECK} FpDbgCommon, {$ENDIF}
|
{$IFDEF FPDEBUG_THREAD_CHECK} FpDbgCommon, {$ENDIF}
|
||||||
|
@ -7,7 +7,7 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, LazFileUtils, LazLogger, DbgIntfDebuggerBase,
|
Classes, SysUtils, LazFileUtils, LazLogger, DbgIntfDebuggerBase,
|
||||||
TestDbgConfig, TTestDbgExecuteables, TestDbgTestSuites, TestDbgControl,
|
TestDbgConfig, TTestDbgExecuteables, TestDbgTestSuites, TestDbgControl,
|
||||||
FpDebugDebugger, LazDebuggerIntf, Dialogs, Forms,
|
FpDebugDebugger, LazDebuggerIntf, LazDebuggerIntfBaseTypes, Dialogs, Forms,
|
||||||
FpDbgDwarfFreePascal;
|
FpDbgDwarfFreePascal;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
@ -7,8 +7,8 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, math, TestDbgControl, TestDbgTestSuites,
|
Classes, SysUtils, math, TestDbgControl, TestDbgTestSuites,
|
||||||
TTestWatchUtilities, TestCommonSources, TestDbgConfig, TTestDebuggerClasses,
|
TTestWatchUtilities, TestCommonSources, TestDbgConfig, TTestDebuggerClasses,
|
||||||
LazDebuggerIntf, DbgIntfDebuggerBase, DbgIntfBaseTypes, LazLoggerBase,
|
LazDebuggerIntf, LazDebuggerIntfBaseTypes, DbgIntfDebuggerBase,
|
||||||
Forms;
|
DbgIntfBaseTypes, LazLoggerBase, Forms;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -7,8 +7,8 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, math, TestDbgControl, TestDbgTestSuites, TestBase,
|
Classes, SysUtils, math, TestDbgControl, TestDbgTestSuites, TestBase,
|
||||||
TTestWatchUtilities, TestCommonSources, TestDbgConfig, TestOutputLogger,
|
TTestWatchUtilities, TestCommonSources, TestDbgConfig, TestOutputLogger,
|
||||||
FpDebugDebugger, FpDebugDebuggerUtils, LazDebuggerIntf, DbgIntfDebuggerBase,
|
FpDebugDebugger, FpDebugDebuggerUtils, LazDebuggerIntf,
|
||||||
DbgIntfBaseTypes,
|
LazDebuggerIntfBaseTypes, DbgIntfDebuggerBase, DbgIntfBaseTypes,
|
||||||
{$ifdef FORCE_LAZLOGGER_DUMMY} LazLoggerDummy {$else} LazLoggerBase {$endif}, Forms;
|
{$ifdef FORCE_LAZLOGGER_DUMMY} LazLoggerDummy {$else} LazLoggerBase {$endif}, Forms;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
@ -7,7 +7,8 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, fpcunit, testregistry, TestBase, TestDbgControl,
|
Classes, SysUtils, fpcunit, testregistry, TestBase, TestDbgControl,
|
||||||
TestDbgTestSuites, TestOutputLogger, TTestWatchUtilities, TestCommonSources,
|
TestDbgTestSuites, TestOutputLogger, TTestWatchUtilities, TestCommonSources,
|
||||||
TestDbgConfig, LazDebuggerIntf, DbgIntfDebuggerBase, DbgIntfBaseTypes, Forms,
|
TestDbgConfig, LazDebuggerIntf, LazDebuggerIntfBaseTypes,
|
||||||
|
DbgIntfDebuggerBase, DbgIntfBaseTypes, Forms,
|
||||||
IdeDebuggerBase;
|
IdeDebuggerBase;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
@ -17,7 +17,7 @@ uses
|
|||||||
GDBTypeInfo, LCLProc, Forms, FpDbgLoader, FpDbgDwarf, LazLoggerBase,
|
GDBTypeInfo, LCLProc, Forms, FpDbgLoader, FpDbgDwarf, LazLoggerBase,
|
||||||
LazLoggerProfiling, LazClasses, FpPascalParser, FpPascalBuilder,
|
LazLoggerProfiling, LazClasses, FpPascalParser, FpPascalBuilder,
|
||||||
FpErrorMessages, FpDbgDwarfDataClasses, FpDbgDwarfFreePascal, FpDbgCommon,
|
FpErrorMessages, FpDbgDwarfDataClasses, FpDbgDwarfFreePascal, FpDbgCommon,
|
||||||
MenuIntf, LazDebuggerIntf;
|
MenuIntf, LazDebuggerIntf, LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ uses
|
|||||||
DbgIntfBaseTypes, DbgIntfDebuggerBase, TestBase, FpGdbmiDebugger, LCLProc,
|
DbgIntfBaseTypes, DbgIntfDebuggerBase, TestBase, FpGdbmiDebugger, LCLProc,
|
||||||
IdeDebuggerBase, TestWatchUtils, GDBMIDebugger, FpErrorMessages,
|
IdeDebuggerBase, TestWatchUtils, GDBMIDebugger, FpErrorMessages,
|
||||||
TestDbgControl, TestDbgConfig, TTestDbgExecuteables, TestDbgTestSuites,
|
TestDbgControl, TestDbgConfig, TTestDbgExecuteables, TestDbgTestSuites,
|
||||||
LazDebuggerIntf;
|
LazDebuggerIntf, LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
const
|
const
|
||||||
BREAK_COUNT_TestWatchesUnitSimple = 17;
|
BREAK_COUNT_TestWatchesUnitSimple = 17;
|
||||||
|
@ -26,7 +26,7 @@ uses
|
|||||||
windows,
|
windows,
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
Classes, sysutils, math, FpdMemoryTools, FpDbgInfo, LldbDebugger,
|
Classes, sysutils, math, FpdMemoryTools, FpDbgInfo, LldbDebugger,
|
||||||
LldbInstructions, LldbHelper, LazDebuggerIntf, DbgIntfBaseTypes,
|
LldbInstructions, LldbHelper, LazDebuggerIntf, DbgIntfBaseTypes, LazDebuggerIntfBaseTypes,
|
||||||
DbgIntfDebuggerBase, LCLProc, Forms, FpDbgLoader, FpDbgDwarf, LazLoggerBase,
|
DbgIntfDebuggerBase, LCLProc, Forms, FpDbgLoader, FpDbgDwarf, LazLoggerBase,
|
||||||
LazClasses, FpPascalParser, FpPascalBuilder, FpErrorMessages,
|
LazClasses, FpPascalParser, FpPascalBuilder, FpErrorMessages,
|
||||||
FpDbgDwarfDataClasses, FpDbgDwarfFreePascal, FpDbgCommon;
|
FpDbgDwarfDataClasses, FpDbgDwarfFreePascal, FpDbgCommon;
|
||||||
|
@ -7,7 +7,7 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, LazFileUtils, LazLogger, DbgIntfDebuggerBase,
|
Classes, SysUtils, LazFileUtils, LazLogger, DbgIntfDebuggerBase,
|
||||||
TestDbgConfig, TTestDbgExecuteables, TestDbgTestSuites, TestDbgControl,
|
TestDbgConfig, TTestDbgExecuteables, TestDbgTestSuites, TestDbgControl,
|
||||||
FpLldbDebugger, LazDebuggerIntf, Dialogs, Forms,
|
FpLldbDebugger, LazDebuggerIntf, LazDebuggerIntfBaseTypes, Dialogs, Forms,
|
||||||
FpDbgDwarfFreePascal;
|
FpDbgDwarfFreePascal;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
@ -7,8 +7,8 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, testutils, testregistry, fpcunit, TestBase,
|
Classes, SysUtils, testutils, testregistry, fpcunit, TestBase,
|
||||||
TestDbgTestSuites, TestDbgControl, TTestWatchUtilities, TestCommonSources,
|
TestDbgTestSuites, TestDbgControl, TTestWatchUtilities, TestCommonSources,
|
||||||
TestDbgConfig, TestOutputLogger, LazDebuggerIntf, DbgIntfDebuggerBase,
|
TestDbgConfig, TestOutputLogger, LazDebuggerIntf, LazDebuggerIntfBaseTypes,
|
||||||
DbgIntfBaseTypes;
|
DbgIntfDebuggerBase, DbgIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -33,6 +33,10 @@ See LCL license for details."/>
|
|||||||
<Type Value="Main Unit"/>
|
<Type Value="Main Unit"/>
|
||||||
<UnitName Value="lazdebuggerintfpackage"/>
|
<UnitName Value="lazdebuggerintfpackage"/>
|
||||||
</Item>
|
</Item>
|
||||||
|
<Item>
|
||||||
|
<Filename Value="lazdebuggerintfbasetypes.pas"/>
|
||||||
|
<UnitName Value="lazdebuggerintfbasetypes"/>
|
||||||
|
</Item>
|
||||||
</Files>
|
</Files>
|
||||||
<RequiredPkgs>
|
<RequiredPkgs>
|
||||||
<Item>
|
<Item>
|
||||||
|
@ -21,61 +21,10 @@ unit LazDebuggerIntf;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils;
|
Classes, SysUtils, LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
TDBGState = LazDebuggerIntfBaseTypes.TDBGState deprecated 'Use LazDebuggerIntfBaseTypes.TDBGState';
|
||||||
{ Debugger states
|
|
||||||
--------------------------------------------------------------------------
|
|
||||||
dsNone:
|
|
||||||
The debug object is created, but no instance of an external debugger
|
|
||||||
exists.
|
|
||||||
Initial state, leave with Init, enter with Done
|
|
||||||
|
|
||||||
dsIdle:
|
|
||||||
The external debugger is started, but no filename (or no other params
|
|
||||||
required to start) were given.
|
|
||||||
|
|
||||||
dsStop:
|
|
||||||
(Optional) The execution of the target is stopped
|
|
||||||
The external debugger is loaded and ready to (re)start the execution
|
|
||||||
of the target.
|
|
||||||
Breakpoints, watches etc can be defined
|
|
||||||
|
|
||||||
dsPause:
|
|
||||||
The debugger has paused the target. Target variables can be examined
|
|
||||||
|
|
||||||
dsInternalPause:
|
|
||||||
Pause, not visible to user.
|
|
||||||
For examble auto continue breakpoint: Allow collection of Snapshot data
|
|
||||||
|
|
||||||
dsInit:
|
|
||||||
(Optional, Internal) The debugger is about to run
|
|
||||||
|
|
||||||
dsRun:
|
|
||||||
The target is running.
|
|
||||||
|
|
||||||
dsError:
|
|
||||||
Something unforseen has happened. A shutdown of the debugger is in
|
|
||||||
most cases needed.
|
|
||||||
|
|
||||||
-dsDestroying
|
|
||||||
The debugger is about to be destroyed.
|
|
||||||
Should normally happen immediate on calling Release.
|
|
||||||
But the debugger may be in nested calls, and has to exit them first.
|
|
||||||
--------------------------------------------------------------------------
|
|
||||||
}
|
|
||||||
TDBGState = (
|
|
||||||
dsNone,
|
|
||||||
dsIdle,
|
|
||||||
dsStop,
|
|
||||||
dsPause,
|
|
||||||
dsInternalPause,
|
|
||||||
dsInit,
|
|
||||||
dsRun,
|
|
||||||
dsError,
|
|
||||||
dsDestroying
|
|
||||||
);
|
|
||||||
|
|
||||||
{$REGION ***** Internal types ***** }
|
{$REGION ***** Internal types ***** }
|
||||||
|
|
||||||
|
@ -0,0 +1,71 @@
|
|||||||
|
unit LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
|
{$mode objfpc}{$H+}
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
type
|
||||||
|
|
||||||
|
(* TDBGPtr
|
||||||
|
datatype pointing to data on the target
|
||||||
|
*)
|
||||||
|
TDBGPtr = type QWord;
|
||||||
|
PDBGPtr = ^TDBGPtr;
|
||||||
|
TDBGPtrArray = Array of TDBGPtr;
|
||||||
|
|
||||||
|
{ Debugger states
|
||||||
|
--------------------------------------------------------------------------
|
||||||
|
dsNone:
|
||||||
|
The debug object is created, but no instance of an external debugger
|
||||||
|
exists.
|
||||||
|
Initial state, leave with Init, enter with Done
|
||||||
|
|
||||||
|
dsIdle:
|
||||||
|
The external debugger is started, but no filename (or no other params
|
||||||
|
required to start) were given.
|
||||||
|
|
||||||
|
dsStop:
|
||||||
|
(Optional) The execution of the target is stopped
|
||||||
|
The external debugger is loaded and ready to (re)start the execution
|
||||||
|
of the target.
|
||||||
|
Breakpoints, watches etc can be defined
|
||||||
|
|
||||||
|
dsPause:
|
||||||
|
The debugger has paused the target. Target variables can be examined
|
||||||
|
|
||||||
|
dsInternalPause:
|
||||||
|
Pause, not visible to user.
|
||||||
|
For examble auto continue breakpoint: Allow collection of Snapshot data
|
||||||
|
|
||||||
|
dsInit:
|
||||||
|
(Optional, Internal) The debugger is about to run
|
||||||
|
|
||||||
|
dsRun:
|
||||||
|
The target is running.
|
||||||
|
|
||||||
|
dsError:
|
||||||
|
Something unforseen has happened. A shutdown of the debugger is in
|
||||||
|
most cases needed.
|
||||||
|
|
||||||
|
-dsDestroying
|
||||||
|
The debugger is about to be destroyed.
|
||||||
|
Should normally happen immediate on calling Release.
|
||||||
|
But the debugger may be in nested calls, and has to exit them first.
|
||||||
|
--------------------------------------------------------------------------
|
||||||
|
}
|
||||||
|
TDBGState = (
|
||||||
|
dsNone,
|
||||||
|
dsIdle,
|
||||||
|
dsStop,
|
||||||
|
dsPause,
|
||||||
|
dsInternalPause,
|
||||||
|
dsInit,
|
||||||
|
dsRun,
|
||||||
|
dsError,
|
||||||
|
dsDestroying
|
||||||
|
);
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
@ -2,13 +2,13 @@
|
|||||||
This source is only used to compile and install the package.
|
This source is only used to compile and install the package.
|
||||||
}
|
}
|
||||||
|
|
||||||
unit LazDebuggerIntfPackage;
|
unit lazdebuggerintfpackage;
|
||||||
|
|
||||||
{$warn 5023 off : no warning about unused units}
|
{$warn 5023 off : no warning about unused units}
|
||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
LazDebuggerIntf, LazDebuggerTemplate;
|
LazDebuggerIntf, LazDebuggerTemplate, LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ uses
|
|||||||
// CmdLineDebuggerBase
|
// CmdLineDebuggerBase
|
||||||
DebugProcess,
|
DebugProcess,
|
||||||
// LazDebuggerLldb
|
// LazDebuggerLldb
|
||||||
LldbInstructions, LldbHelper, LazDebuggerIntf;
|
LldbInstructions, LldbHelper, LazDebuggerIntf, LazDebuggerIntfBaseTypes;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -6,7 +6,8 @@ interface
|
|||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, TTestDbgExecuteables, TestDbgControl, TestDbgConfig,
|
Classes, SysUtils, TTestDbgExecuteables, TestDbgControl, TestDbgConfig,
|
||||||
TestOutputLogger, TestCommonSources, LazDebuggerIntf, LazFileUtils, LazLogger,
|
TestOutputLogger, TestCommonSources, LazDebuggerIntf, LazDebuggerIntfBaseTypes,
|
||||||
|
LazFileUtils, LazLogger,
|
||||||
DbgIntfDebuggerBase, StrUtils, fpcunit, testregistry, RegExpr;
|
DbgIntfDebuggerBase, StrUtils, fpcunit, testregistry, RegExpr;
|
||||||
|
|
||||||
const
|
const
|
||||||
|
@ -7,8 +7,8 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, fgl, TestDbgConfig, TestDbgCompilerProcess,
|
Classes, SysUtils, fgl, TestDbgConfig, TestDbgCompilerProcess,
|
||||||
TestOutputLogger, TTestDebuggerClasses, TestCommonSources, LazDebuggerIntf,
|
TestOutputLogger, TTestDebuggerClasses, TestCommonSources, LazDebuggerIntf,
|
||||||
LazFileUtils, LazLoggerBase, FileUtil, LazStringUtils, DbgIntfDebuggerBase,
|
LazDebuggerIntfBaseTypes, LazFileUtils, LazLoggerBase, FileUtil,
|
||||||
fpcunit;
|
LazStringUtils, DbgIntfDebuggerBase, fpcunit;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ uses
|
|||||||
Classes, SysUtils, math, DbgIntfBaseTypes, DbgIntfDebuggerBase,
|
Classes, SysUtils, math, DbgIntfBaseTypes, DbgIntfDebuggerBase,
|
||||||
FpPascalBuilder, LazLoggerBase, Forms, IdeDebuggerBase, RegExpr,
|
FpPascalBuilder, LazLoggerBase, Forms, IdeDebuggerBase, RegExpr,
|
||||||
TestDbgTestSuites, TTestDebuggerClasses, TTestDbgExecuteables, TestDbgConfig,
|
TestDbgTestSuites, TTestDebuggerClasses, TTestDbgExecuteables, TestDbgConfig,
|
||||||
LazDebuggerIntf, TestOutputLogger;
|
LazDebuggerIntf, LazDebuggerIntfBaseTypes, TestOutputLogger;
|
||||||
|
|
||||||
type
|
type
|
||||||
TWatchExpectationResultKind = (
|
TWatchExpectationResultKind = (
|
||||||
|
@ -16,7 +16,8 @@ uses
|
|||||||
// IdeIntf
|
// IdeIntf
|
||||||
IDEWindowIntf, IDECommands, IDEImagesIntf,
|
IDEWindowIntf, IDECommands, IDEImagesIntf,
|
||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfBaseTypes, DbgIntfDebuggerBase, LazDebuggerIntf,
|
DbgIntfDebuggerBase,
|
||||||
|
LazDebuggerIntfBaseTypes,
|
||||||
// IDE
|
// IDE
|
||||||
DebuggerDlg, Debugger, BaseDebugManager, EditorOptions, SourceEditor;
|
DebuggerDlg, Debugger, BaseDebugManager, EditorOptions, SourceEditor;
|
||||||
|
|
||||||
|
@ -35,6 +35,7 @@ uses
|
|||||||
IDEWindowIntf, IDEImagesIntf, ObjectInspector, PropEdits,
|
IDEWindowIntf, IDEImagesIntf, ObjectInspector, PropEdits,
|
||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfDebuggerBase, DbgIntfBaseTypes, LazDebuggerIntf,
|
DbgIntfDebuggerBase, DbgIntfBaseTypes, LazDebuggerIntf,
|
||||||
|
LazDebuggerIntfBaseTypes,
|
||||||
// IDE
|
// IDE
|
||||||
LazarusIDEStrConsts, BaseDebugManager, InputHistory, IDEProcs,
|
LazarusIDEStrConsts, BaseDebugManager, InputHistory, IDEProcs,
|
||||||
Debugger, DebuggerDlg, DebuggerStrConst, EnvironmentOpts;
|
Debugger, DebuggerDlg, DebuggerStrConst, EnvironmentOpts;
|
||||||
|
@ -44,7 +44,7 @@ uses
|
|||||||
// IdeIntf
|
// IdeIntf
|
||||||
IDEWindowIntf, IDEImagesIntf,
|
IDEWindowIntf, IDEImagesIntf,
|
||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfDebuggerBase, LazDebuggerIntf,
|
DbgIntfDebuggerBase, LazDebuggerIntf, LazDebuggerIntfBaseTypes,
|
||||||
// IDE
|
// IDE
|
||||||
BaseDebugManager, LazarusIDEStrConsts, DebuggerStrConst, Debugger, DebuggerDlg;
|
BaseDebugManager, LazarusIDEStrConsts, DebuggerStrConst, Debugger, DebuggerDlg;
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ uses
|
|||||||
IDEImagesIntf, LazarusIDEStrConsts, DebuggerStrConst, Debugger,
|
IDEImagesIntf, LazarusIDEStrConsts, DebuggerStrConst, Debugger,
|
||||||
DebuggerTreeView, IdeDebuggerBase, DebuggerDlg, DbgIntfBaseTypes,
|
DebuggerTreeView, IdeDebuggerBase, DebuggerDlg, DbgIntfBaseTypes,
|
||||||
DbgIntfDebuggerBase, DbgIntfMiscClasses, SynEdit, laz.VirtualTrees,
|
DbgIntfDebuggerBase, DbgIntfMiscClasses, SynEdit, laz.VirtualTrees,
|
||||||
LazDebuggerIntf, BaseDebugManager, EnvironmentOpts;
|
LazDebuggerIntf, LazDebuggerIntfBaseTypes, BaseDebugManager, EnvironmentOpts;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -59,7 +59,7 @@ uses
|
|||||||
InspectDlg, DebugEventsForm, PseudoTerminalDlg, FeedbackDlg, ThreadDlg,
|
InspectDlg, DebugEventsForm, PseudoTerminalDlg, FeedbackDlg, ThreadDlg,
|
||||||
HistoryDlg, ProcessDebugger, DbgIntfBaseTypes, DbgIntfDebuggerBase,
|
HistoryDlg, ProcessDebugger, DbgIntfBaseTypes, DbgIntfDebuggerBase,
|
||||||
DbgIntfMiscClasses, DbgIntfPseudoTerminal, LazDebuggerIntf,
|
DbgIntfMiscClasses, DbgIntfPseudoTerminal, LazDebuggerIntf,
|
||||||
BaseDebugManager;
|
LazDebuggerIntfBaseTypes, BaseDebugManager;
|
||||||
|
|
||||||
|
|
||||||
type
|
type
|
||||||
|
@ -44,7 +44,7 @@ uses
|
|||||||
LazClasses, Maps, LazMethodList,
|
LazClasses, Maps, LazMethodList,
|
||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfBaseTypes, DbgIntfMiscClasses, DbgIntfDebuggerBase,
|
DbgIntfBaseTypes, DbgIntfMiscClasses, DbgIntfDebuggerBase,
|
||||||
LazDebuggerIntf, IdeDebuggerBase;
|
LazDebuggerIntf, LazDebuggerIntfBaseTypes, IdeDebuggerBase;
|
||||||
|
|
||||||
const
|
const
|
||||||
XMLBreakPointsNode = 'BreakPoints';
|
XMLBreakPointsNode = 'BreakPoints';
|
||||||
|
@ -44,7 +44,7 @@ uses
|
|||||||
// LazUtils
|
// LazUtils
|
||||||
FileUtil, UTF8Process, LazFileUtils, LazLoggerBase,
|
FileUtil, UTF8Process, LazFileUtils, LazLoggerBase,
|
||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfDebuggerBase, LazDebuggerIntf,
|
DbgIntfDebuggerBase, LazDebuggerIntfBaseTypes,
|
||||||
// IDE
|
// IDE
|
||||||
ProcessList, Debugger;
|
ProcessList, Debugger;
|
||||||
|
|
||||||
|
@ -69,7 +69,7 @@ uses
|
|||||||
IDEWindowIntf, ProjectIntf, MacroDefIntf, ToolBarIntf, IDEDialogs, IDECommands,
|
IDEWindowIntf, ProjectIntf, MacroDefIntf, ToolBarIntf, IDEDialogs, IDECommands,
|
||||||
EditorSyntaxHighlighterDef,
|
EditorSyntaxHighlighterDef,
|
||||||
// DebuggerIntf
|
// DebuggerIntf
|
||||||
DbgIntfDebuggerBase, LazDebuggerIntf,
|
DbgIntfDebuggerBase, LazDebuggerIntf, LazDebuggerIntfBaseTypes,
|
||||||
// IDE units
|
// IDE units
|
||||||
IDECmdLine, LazarusIDEStrConsts, EditorOptions,
|
IDECmdLine, LazarusIDEStrConsts, EditorOptions,
|
||||||
EnvironmentOpts, WordCompletion, FindReplaceDialog, IDEProcs, IDEOptionDefs,
|
EnvironmentOpts, WordCompletion, FindReplaceDialog, IDEProcs, IDEOptionDefs,
|
||||||
|
Loading…
Reference in New Issue
Block a user