// THIS FILE IS AUTOMATICALLY GENERATED FROM regen.pl -- DO NOT MODIFY DIRECTLY function TAtomList.GetIndefiniteString(Perspective: TAvatar; const Conjunction: UTF8String): UTF8String; var Count: Cardinal; E: TAtomList.TEnumerator; begin Result := ''; Count := 0; E := GetEnumerator(); try while (E.MoveNext()) do begin if (Count > 0) then begin if (E.HasMore()) then Result := Result + ', ' else if (Count > 1) then Result := Result + ', ' + Conjunction + ' ' else Result := Result + ' ' + Conjunction + ' '; end; Result := Result + E.Current.GetIndefiniteName(Perspective); Inc(Count); end; finally E.Free(); end; end; function TThingList.GetIndefiniteString(Perspective: TAvatar; const Conjunction: UTF8String): UTF8String; var Count: Cardinal; E: TThingList.TEnumerator; begin Result := ''; Count := 0; E := GetEnumerator(); try while (E.MoveNext()) do begin if (Count > 0) then begin if (E.HasMore()) then Result := Result + ', ' else if (Count > 1) then Result := Result + ', ' + Conjunction + ' ' else Result := Result + ' ' + Conjunction + ' '; end; Result := Result + E.Current.GetIndefiniteName(Perspective); Inc(Count); end; finally E.Free(); end; end; function GetIndefiniteString(const List: array of TAtom; StartIndex, EndIndex: Cardinal; Perspective: TAvatar; const Conjunction: UTF8String): UTF8String; var Index: Cardinal; begin Assert(StartIndex >= Low(List)); Assert(EndIndex <= High(List)); Assert(StartIndex >= EndIndex); Result := ''; for Index := StartIndex to EndIndex do begin if (Index-StartIndex > 0) then begin if (Index < EndIndex) then Result := Result + ', ' else if (Index-StartIndex > 1) then Result := Result + ', ' + Conjunction + ' ' else Result := Result + ' ' + Conjunction + ' '; end; Result := Result + List[Index].GetIndefiniteName(Perspective); end; end; function TAtomList.GetDefiniteString(Perspective: TAvatar; const Conjunction: UTF8String): UTF8String; var Count: Cardinal; E: TAtomList.TEnumerator; begin Result := ''; Count := 0; E := GetEnumerator(); try while (E.MoveNext()) do begin if (Count > 0) then begin if (E.HasMore()) then Result := Result + ', ' else if (Count > 1) then Result := Result + ', ' + Conjunction + ' ' else Result := Result + ' ' + Conjunction + ' '; end; Result := Result + E.Current.GetDefiniteName(Perspective); Inc(Count); end; finally E.Free(); end; end; function TThingList.GetDefiniteString(Perspective: TAvatar; const Conjunction: UTF8String): UTF8String; var Count: Cardinal; E: TThingList.TEnumerator; begin Result := ''; Count := 0; E := GetEnumerator(); try while (E.MoveNext()) do begin if (Count > 0) then begin if (E.HasMore()) then Result := Result + ', ' else if (Count > 1) then Result := Result + ', ' + Conjunction + ' ' else Result := Result + ' ' + Conjunction + ' '; end; Result := Result + E.Current.GetDefiniteName(Perspective); Inc(Count); end; finally E.Free(); end; end; function GetDefiniteString(const List: array of TAtom; StartIndex, EndIndex: Cardinal; Perspective: TAvatar; const Conjunction: UTF8String): UTF8String; var Index: Cardinal; begin Assert(StartIndex >= Low(List)); Assert(EndIndex <= High(List)); Assert(StartIndex >= EndIndex); Result := ''; for Index := StartIndex to EndIndex do begin if (Index-StartIndex > 0) then begin if (Index < EndIndex) then Result := Result + ', ' else if (Index-StartIndex > 1) then Result := Result + ', ' + Conjunction + ' ' else Result := Result + ' ' + Conjunction + ' '; end; Result := Result + List[Index].GetDefiniteName(Perspective); end; end; function TAtomList.GetLongDefiniteString(Perspective: TAvatar; const Conjunction: UTF8String): UTF8String; var Count: Cardinal; E: TAtomList.TEnumerator; begin Result := ''; Count := 0; E := GetEnumerator(); try while (E.MoveNext()) do begin if (Count > 0) then begin if (E.HasMore()) then Result := Result + ', ' else if (Count > 1) then Result := Result + ', ' + Conjunction + ' ' else Result := Result + ' ' + Conjunction + ' '; end; Result := Result + E.Current.GetLongDefiniteName(Perspective); Inc(Count); end; finally E.Free(); end; end; function TThingList.GetLongDefiniteString(Perspective: TAvatar; const Conjunction: UTF8String): UTF8String; var Count: Cardinal; E: TThingList.TEnumerator; begin Result := ''; Count := 0; E := GetEnumerator(); try while (E.MoveNext()) do begin if (Count > 0) then begin if (E.HasMore()) then Result := Result + ', ' else if (Count > 1) then Result := Result + ', ' + Conjunction + ' ' else Result := Result + ' ' + Conjunction + ' '; end; Result := Result + E.Current.GetLongDefiniteName(Perspective); Inc(Count); end; finally E.Free(); end; end; function GetLongDefiniteString(const List: array of TAtom; StartIndex, EndIndex: Cardinal; Perspective: TAvatar; const Conjunction: UTF8String): UTF8String; var Index: Cardinal; begin Assert(StartIndex >= Low(List)); Assert(EndIndex <= High(List)); Assert(StartIndex >= EndIndex); Result := ''; for Index := StartIndex to EndIndex do begin if (Index-StartIndex > 0) then begin if (Index < EndIndex) then Result := Result + ', ' else if (Index-StartIndex > 1) then Result := Result + ', ' + Conjunction + ' ' else Result := Result + ' ' + Conjunction + ' '; end; Result := Result + List[Index].GetLongDefiniteName(Perspective); end; end;