unit uw40844c; {$ifdef FPC}{$mode DELPHI}{$endif} interface uses uw40844b ; type TArrayEnumerable = class(TInterfacedObject, IEnumerable) private function GetEnumerator: IEnumerable; public constructor Create(const Arr: TArray); end; TStableOrderByEnumerable = record strict private type TImpl = class(TInterfacedObject, IEnumerable) public function GetEnumerator: IEnumerable; end; public class function Create(const AItems: IEnumerable; const AComparer: IComparer): IEnumerable; overload; static; end; TEmptyEnumerable = class(TInterfacedObject, IEnumerable) strict private class var FInstance: IEnumerable; function GetEnumerator: IEnumerable; end; implementation { TArrayEnumerable } constructor TArrayEnumerable.Create(const Arr: TArray); var IntfEnum: IEnumerable; begin end; function TArrayEnumerable.GetEnumerator: IEnumerable; begin Result := nil; end; { TStableOrderByEnumerable } function TStableOrderByEnumerable.TImpl.GetEnumerator: IEnumerable; var ResultList: TFastListRec; begin end; class function TStableOrderByEnumerable.Create(const AItems: IEnumerable; const AComparer: IComparer): IEnumerable; begin TImpl.Create; end; { TEmptyEnumerable } function TEmptyEnumerable.GetEnumerator: IEnumerable; begin Result := nil; end; end.