распределение в json, еще нашел внесенный переходом баг с отображением массивов текущего файла.
This commit is contained in:
2025-05-18 18:12:30 +03:00
parent cba4425cd7
commit 41ce6527d5
9 changed files with 66 additions and 29 deletions

View File

@@ -31,16 +31,19 @@ public class SPF_GetAllDeclaratedArrays extends SapforAnalysis {
}
@Override
public void unpack(String packed) throws Exception {
System.out.println("packed="+ Utils_.Brackets(packed));
ArraysJson arraysJson = Utils_.gson.fromJson(packed, ArraysJson.class);
System.out.println("size="+arraysJson.allArrays.size());
for (ProjectArray array: arraysJson.allArrays){
array.Init();
target.declaratedArrays.put(array.id, array);
// array.print();
//--
for (ArrayDecl decl: array.declPlaces){
DBProjectFile projectFile = target.db.files.get(decl.file);
projectFile.array_decls.add(decl);
}
}
for (DBProjectFile file : target.db.files.Data.values())
for (DBProjectFile file : target.db.files.Data.values()) {
file.ArrayGraphTitle = "Объявлений: " + file.array_decls.size();
}
target.UpdateArraysCount();
}
@Override

View File

@@ -1,10 +1,13 @@
package _VisualDVM.Passes.All;
import Common.Utils.Index;
import Common.Utils.Utils_;
import Common.Utils.Vector_;
import Common.Visual.Controls.PassControl;
import Common.Visual.UI;
import _VisualDVM.Global;
import _VisualDVM.Passes.Sapfor.SapforAnalysis;
import _VisualDVM.ProjectData.SapforData.Regions.ParallelRegion;
import _VisualDVM.ProjectData.SapforData.Regions.RegionsJson;
import java.util.Comparator;
import java.util.Vector;
@@ -23,12 +26,10 @@ public class SPF_GetArrayDistributionOnlyAnalysis extends SapforAnalysis {
}
@Override
protected void unpack(String packed) throws Exception {
String[] splited = packed.split("#");
Index idx = new Index();
int n = Integer.parseInt(splited[idx.Inc()]);
for (int i = 0; i < n; ++i) {
ParallelRegion p = new ParallelRegion(splited, idx);
target.parallelRegions.put(p.regionId, p);
RegionsJson regionsJson = Utils_.gson.fromJson(packed, RegionsJson.class);
for (ParallelRegion parallelRegion: regionsJson.allRegions){
parallelRegion.Init();
target.parallelRegions.put(parallelRegion.regionId, parallelRegion);
}
//отсортировать по имени шаблоны
target.templates.sort(Comparator.comparing(o -> o.name));

View File

@@ -1,8 +1,10 @@
package _VisualDVM.Passes.All;
import Common.Utils.Index;
import Common.Utils.Utils_;
import _VisualDVM.Global;
import _VisualDVM.Passes.Sapfor.SapforAnalysis;
import _VisualDVM.ProjectData.SapforData.Regions.ParallelRegion;
import _VisualDVM.ProjectData.SapforData.Regions.RegionsJson;
public class SPF_GetArrayDistributionOnlyRegions extends SapforAnalysis {
@Override
public String phase() {
@@ -10,12 +12,10 @@ public class SPF_GetArrayDistributionOnlyRegions extends SapforAnalysis {
}
@Override
protected void unpack(String packed) throws Exception {
String[] splited = packed.split("#");
Index idx = new Index();
int n = Integer.parseInt(splited[idx.Inc()]);
for (int i = 0; i < n; ++i) {
ParallelRegion p = new ParallelRegion(splited, idx);
target.parallelRegions.put(p.regionId, p);
RegionsJson regionsJson = Utils_.gson.fromJson(packed, RegionsJson.class);
for (ParallelRegion parallelRegion: regionsJson.allRegions){
parallelRegion.Init();
target.parallelRegions.put(parallelRegion.regionId, parallelRegion);
}
}
@Override