simplification of resolver via new StringList.GetString method.

This commit is contained in:
Norayr Chilingarian 2020-06-17 18:24:17 +04:00
parent f6a4c1f0bc
commit 4aff0f44e1
2 changed files with 7 additions and 6 deletions

2
lists

@ -1 +1 @@
Subproject commit 8bd436755e98807041cd19e9356c7cedb25dd5e9 Subproject commit 9235743df082eeb719f583f5261c792df9feec99

View file

@ -2,6 +2,7 @@ MODULE vpkResolver;
IMPORT Out, StringList, vpkdepTree; IMPORT Out, StringList, vpkdepTree;
TYPE TYPE
pstr = StringList.pstring;
Tdep = vpkdepTree.Tdep; Tdep = vpkdepTree.Tdep;
Tdeps = vpkdepTree.Tdeps; Tdeps = vpkdepTree.Tdeps;
@ -33,7 +34,7 @@ VAR
depStrs: StringList.TStringList; depStrs: StringList.TStringList;
t: Tdep; t: Tdep;
deps: Tdeps; deps: Tdeps;
e: StringList.Node; p: pstr;
i: INTEGER; i: INTEGER;
BEGIN BEGIN
met.Add(met, d); met.Add(met, d);
@ -43,11 +44,11 @@ BEGIN
NEW (deps, depStrs.Count); NEW (deps, depStrs.Count);
i := 0; i := 0;
REPEAT REPEAT
e := depStrs.Get(depStrs, i); p := depStrs.GetString(depStrs, i);
IF e # NIL THEN IF p # NIL THEN
t := met.GetByName(met, e.obj(StringList.TString).str^); t := met.GetByName(met, p^);
IF t = NIL THEN IF t = NIL THEN
t := vpkdepTree.CreateDep(e.obj(StringList.TString).str^); t := vpkdepTree.CreateDep(p^);
t.InstallRetriever(t, rtvr); t.InstallRetriever(t, rtvr);
END; END;
deps[i] := t; deps[i] := t;