anchor.diff:      Add(LItem);
   end;
   
  -constructor TList<T>.Create(ACollection: TEnumerableWithPointers<T>);
  -var
  -  LItem: PT;
  -begin
  -  Create;
  -  for LItem in ACollection.Ptr^ do
  -    Add(LItem^);
  -end;
  -
   destructor TList<T>.Destroy;
   begin
     SetCapacity(0);
  
positive.code:     constructor Create; overload;
      constructor Create(const AComparer: IComparer<T>); overload;
      constructor Create(ACollection: TEnumerable<T>); overload;
      constructor Create(ACollection: TEnumerableWithPointers<T>); overload;
      destructor Destroy; override;
  
      function Add(constref AValue: T): SizeInt; virtual;
  
negative.code:     function GetCount: SizeInt; override;
    public
      constructor Create(ACollection: TEnumerable<T>); overload;
      destructor Destroy; override;
      procedure Enqueue(constref AValue: T);
      function Dequeue: T;
  