generateNonLazyClasses static method
void
generateNonLazyClasses(
- CodeBuffer buffer,
- List<
AssetLookupFile> files, - AssetXConfig config,
- String packageName,
- bool usePackagePrefix,
Generates non-lazy static classes for datax and envx types
Implementation
static void generateNonLazyClasses(
CodeBuffer buffer,
List<AssetLookupFile> files,
AssetXConfig config,
String packageName,
bool usePackagePrefix,
) {
// Find files that should be generated as non-lazy
final nonLazyFiles = <AssetLookupFile>[];
for (final file in files) {
final typeName = _getTypeName(file, config);
if (config.mapRegistry != null &&
config.mapRegistry!.containsKey(typeName)) {
final mapConfig = config.mapRegistry![typeName]!;
if (mapConfig.builtin != null &&
!mapConfig.lazy &&
["datax", "envx"].contains(mapConfig.builtin)) {
nonLazyFiles.add(file);
}
}
}
if (nonLazyFiles.isEmpty) return;
buffer.addCode('// Generated non-lazy static classes');
buffer.addCode('');
int classCounter = 0;
for (final file in nonLazyFiles) {
_generateStaticClass(buffer, file, classCounter, config);
classCounter++;
}
}