Forum > Debugger

Debugging generics in Lazarus IDE

(1/1)

lolka_bolka:
Guys, I am crying.

Please somebody enlighten me about this:

I have this:

TDictionaryStrInt = specialize TFPGMap<string, integer>;
Can somebody tell me how the heck can I debug the Map, the Key/Value pairs?

I just see only reference to a memory address, but I really need to see the items.

Watch, local variables does not helps me.

I can see only this:


--- Code: Pascal  [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} --- <TDictionaryStrStr> = {  <TFPSMAP> = {     <TFPSLIST> = {       <TOBJECT> = {         _vptr$ = {           0x5612ec,            0x230b988}},       FLIST = ,       FCOUNT = 1,       FCAPACITY = 4,       FITEMSIZE = 8},      FKEYSIZE = 4,      FDATASIZE = 4,     FDUPLICATES = DUPIGNORE,     FSORTED = false,     FONKEYPTRCOMPARE = $426b70 <TFPGMAP$2$CRC36DB32B4__KEYCOMPARE>,     FONDATAPTRCOMPARE = $523e30  <FGL$_$TFPSMAP_$__$$_BINARYCOMPAREDATA$POINTER$POINTER$$LONGINT>},   FONKEYCOMPARE = $0,   FONDATACOMPARE = $0}  

Martin_fr:
This isnt really a debugger problem.
If you follow the code into the map, you will see it stores it data in flist, and flist is a PByte.

Items are accessed by
    FList+Index*ItemSize

So you need to follow the code, to understand the full structure that is hidden behind the PByte.

Navigation

[0] Message Index

Go to full version