dllist.pp 1.0 KB

12345678910111213141516171819202122232425262728293031323334
  1. unit dllist;
  2. interface
  3. {$linklib pq}
  4. {$i dllisttypes.inc}
  5. function DLNewList:PDllist;cdecl; external;
  6. procedure DLFreeList(_para1:PDllist);cdecl; external;
  7. function DLNewElem(val : pointer) :PDlelem;cdecl;external;
  8. procedure DLFreeElem(_para1:PDlelem);cdecl; external;
  9. function DLGetHead(_para1:PDllist):PDlelem;cdecl; external;
  10. function DLGetTail(_para1:PDllist):PDlelem;cdecl; external;
  11. function DLRemTail(l:PDllist):PDlelem;cdecl; external;
  12. function DLGetPred(_para1:PDlelem):PDlelem;cdecl; external;
  13. function DLGetSucc(_para1:PDlelem):PDlelem;cdecl; external;
  14. procedure DLRemove(_para1:PDlelem);cdecl; external;
  15. procedure DLAddHead(list:PDllist; node:PDlelem);cdecl; external;
  16. procedure DLAddTail(list:PDllist; node:PDlelem);cdecl; external;
  17. function DLRemHead(list:PDllist):PDlelem;cdecl; external;
  18. { Macro translated }
  19. Function DLE_VAL(elem : PDlelem) : pointer;
  20. implementation
  21. // This function is also defined in DllistDyn!
  22. Function DLE_VAL(elem : PDlelem) : pointer;
  23. begin
  24. DLE_VAL:=elem^.dle_val
  25. end;
  26. end.