summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tools.pas17
1 files changed, 17 insertions, 0 deletions
diff --git a/tools.pas b/tools.pas
index 8cf0b5f..c290275 100644
--- a/tools.pas
+++ b/tools.pas
@@ -48,6 +48,7 @@ type
function add(neu: tDateiMitDatum): longint;
function gleicheNamenWie(dmd: tDateienMitDaten): boolean;
function istNamenObermengeVon(dmd: tDateienMitDaten): boolean; inline;
+ function istDisjunktZu(dmd: tDateienMitDaten): boolean; inline;
function toString: string; override;
procedure append(dmd: tDateienMitDaten);
function toMyStringList: tMyStringList;
@@ -236,6 +237,22 @@ begin
result:=j>=dmd.count; // wenn dmd "alle" ist, hatten wir alles gefunden
end;
+function tDateienMitDaten.istDisjunktZu(dmd: tDateienMitDaten): boolean;
+var
+ i,j: longint;
+begin
+ result:=false;
+ i:=0;
+ j:=0;
+ while (i<count) and (j<dmd.count) do
+ case vergleicheStrings(sItems[i].name,dmd.sItems[j].name) of
+ -1: inc(i); // Name fehlt in dmd
+ 0: exit; // gleiche Namen => nicht disjunkt
+ 1: inc(j); // Name fehlt in j
+ end{of case};
+ result:=true; // wenn self oder dmd "alle" ist, hatten wir keine gleichen Namen gefunden
+end;
+
function tDateienMitDaten.toString: string;
var
i: longint;