run method
Implementation
String run() {
allVarStringList = [];
String result = "";
List<String> varStringList = [];
List<String> sortedFilePaths = [...filePaths];
sortedFilePaths.sort((a, b) {
String pathA = a.replaceAll("assets", "");
String pathB = b.split(" = ").first.replaceAll(staticConstString, "");
return pathA.compareTo(pathB);
});
for (String ps in sortedFilePaths) {
// 判断是否有排除的路径
if (ps.startsWith('.') || ps.split("/").last.startsWith('.')) {
print("$ps Path noncompliance");
continue;
}
if (isExcludePath(ps) || !isIncludePath(ps)) {
// print("$ps is exclude path");
continue;
}
String varString = generateOneLine(path: ps);
varStringList.add(varString);
}
// 排序 filePaths
varStringList.sort((a, b) {
String pathA = a.split(" = ").first.replaceAll(staticConstString, "");
String pathB = b.split(" = ").first.replaceAll(staticConstString, "");
return pathA.compareTo(pathB);
});
String varResultString = varStringList.join("\n");
String className = config.className ?? "Assets";
result += "///This file is automatically generated. DO NOT EDIT, all your changes would be lost.\n";
result += "class $className {\n";
result += " $className._();\n";
result += "\n";
result += varResultString;
result += "\n";
result += "\n";
result += "}\n";
return result;
}