getBuilderProcessableAssets method

Set<ProcessableAsset> getBuilderProcessableAssets(
  1. PackageFileResolver fileResolver
)

Returns all assets that need to be processed by builders.

This includes only assets that have builder annotations.

fileResolver is used to resolve asset IDs to Asset objects.

Returns a set of ProcessableAsset objects.

Implementation

Set<ProcessableAsset> getBuilderProcessableAssets(
  PackageFileResolver fileResolver,
) {
  final Set<ProcessableAsset> processableAssets = <ProcessableAsset>{};
  for (final MapEntry<String, List<dynamic>> entry in assets.entries) {
    final int tlmFlag = entry.value[GraphIndex.assetTLMFlag] as int;
    if (tlmFlag == TLMFlag.builder.index || tlmFlag == TLMFlag.both.index) {
      final Asset asset = fileResolver.assetForUri(
        Uri.parse(entry.value[GraphIndex.assetUri]),
      );
      final AssetState state = AssetState.fromIndex(
        entry.value[GraphIndex.assetState],
      );
      processableAssets.add(
        ProcessableAsset(asset, state, TLMFlag.fromIndex(tlmFlag)),
      );
    }
  }
  return processableAssets;
}