Browse Source

fcl-passrc: simplify

git-svn-id: trunk@46509 -
Mattias Gaertner 5 years ago
parent
commit
dba6f9a828
1 changed files with 15 additions and 22 deletions
  1. 15 22
      packages/fcl-passrc/src/pasuseanalyzer.pas

+ 15 - 22
packages/fcl-passrc/src/pasuseanalyzer.pas

@@ -329,6 +329,7 @@ function CompareElementWithPAElement(El, Id: Pointer): integer;
 function ComparePAOverrideLists(List1, List2: Pointer): integer;
 function CompareElementWithPAOverrideList(El, List: Pointer): integer;
 {$endif}
+function CreatePasElementSet: TPasAnalyzerKeySet;
 function GetElModName(El: TPasElement): string;
 function dbgs(a: TPAIdentifierAccess): string; overload;
 
@@ -394,6 +395,17 @@ begin
 end;
 {$endif}
 
+function CreatePasElementSet: TPasAnalyzerKeySet;
+begin
+  Result:=TPasAnalyzerKeySet.Create(
+            {$ifdef pas2js}
+            @PasElementToHashName
+            {$else}
+            @ComparePointer
+            {$endif}
+            ,nil);
+end;
+
 function GetElModName(El: TPasElement): string;
 var
   aModule: TPasModule;
@@ -898,12 +910,7 @@ end;
 
 procedure TPasAnalyzer.CreateTree;
 begin
-  FUsedElements:=TPasAnalyzerKeySet.Create(
-    {$ifdef pas2js}
-    @PAElement_ElToHashName,@PasElementToHashName
-    {$else}
-    @ComparePAElements,@CompareElementWithPAElement
-    {$endif});
+  FUsedElements:=CreatePasElementSet;
 end;
 
 function TPasAnalyzer.MarkElementAsUsed(El: TPasElement; aClass: TPAElementClass
@@ -2977,23 +2984,9 @@ var
 begin
   CreateTree;
   for m in TPAUseMode do
-    FModeChecked[m]:=TPasAnalyzerKeySet.Create(
-      {$ifdef pas2js}
-      @PasElementToHashName
-      {$else}
-      @ComparePointer
-      {$endif}
-      ,nil
-      );
+    FModeChecked[m]:=CreatePasElementSet;
   for oc in TPAOtherCheckedEl do
-    FOtherChecked[oc]:=TPasAnalyzerKeySet.Create(
-      {$ifdef pas2js}
-      @PasElementToHashName
-      {$else}
-      @ComparePointer
-      {$endif}
-      ,nil
-      );
+    FOtherChecked[oc]:=CreatePasElementSet;
   FOverrideLists:=TPasAnalyzerKeySet.Create(
     {$ifdef pas2js}
     @PAOverrideList_ElToHashName,@PasElementToHashName