/** @return the framework search paths with any embedded macros expanded. */ static ImmutableSet<Path> getFrameworkSearchPaths( Optional<ImmutableSortedSet<FrameworkPath>> frameworks, CxxPlatform cxxPlatform, SourcePathResolver resolver) { ImmutableSet<Path> searchPaths = FluentIterable.from(frameworks.get()) .transform( FrameworkPath.getUnexpandedSearchPathFunction( resolver.getPathFunction(), Functions.<Path>identity())) .toSet(); return FluentIterable.from(Optional.of(searchPaths).or(ImmutableSet.<Path>of())) .transform(Functions.toStringFunction()) .transform(CxxFlags.getTranslateMacrosFn(cxxPlatform)) .transform(MorePaths.TO_PATH) .toSet(); }