[Overview][Constants][Types][Classes][Index] | Reference for unit 'fgl' (#rtl)

# TFPSList

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Basic list of memory blocks

## Declaration

Source position: fgl.pp line 46

`type TFPSList = class(TObject)`
`public`
`constructor Create();` |  | Create a new instance of TFPSList
`destructor Destroy; override;` |  | Destroy the list instance.
`class function ItemIsManaged; virtual;`
`function Add();` |  | Add a new item to the list
`procedure Clear;` |  | Clear the list
`procedure Delete();` |  | Delete an item from the list
`procedure DeleteRange();` |  | Delete a range of elements
`class procedure Error();` |  | Raise an EListError exception.
`procedure Exchange();` |  | Exchange two items in the list
`function Expand;` |  | Expand the capacity of the list
`procedure Extract();` |  | delete an element from the list
`function IndexOf();` |  | Search an item in the list
`procedure Insert();` |  | Insert a new item in the list.
`procedure Move();` |  | Moves an item from one position in the list to another.
`procedure Assign();` |  | Copy one list to another
`procedure AddList();` |  | Adds the elements from another list
`function Remove();` |  | Remove the item from the list
`procedure Pack;` |  | Remove empty items from the list
`procedure Sort();` |  | Sort the list
`property Capacity: Integer; [rw]` |  | Current capacity of the list
`property Count: Integer; [rw]` |  | Current element count
`property Items []: Pointer; default; [rw]` |  | Items in the list
`property ItemSize: Integer; [r]` |  | Size of the items in the list
`property List: PByte; [r]` |  | Internal list pointer
`property First: Pointer; [rw]` |  | Pointer to first non-empty item in the list
`property Last: Pointer; [rw]` |  | Pointer to last non-empty item in the list
`end;`

## Inheritance

`TFPSList` |  | Basic list of memory blocks
`TObject` |  | Base class of all classes.

## Description

TFPSList can be seen as the generalized equivalent of the classes unit TFPList list. It is used as a base class for the TFPGList, TFPGMap, TFPGObjectList, TFPGInterfacedObjectList and TFPGMapInterfacedObjectData generic classes.

This list is not meant to be used directly, it is an auxiliary class for the actual generic list classes.

## See also

classes.TFPList |  | Class to manage collections of pointers.
TFPGMap |  | Generic map
TFPGObjectList |  | Generic object list
TFPGInterfacedObjectList |  | Generic interfaced object list
TFPGMapInterfacedObjectData |  | Generic map for reference counted objects