private IEnumerable<Tuple<ResourceId, ResourceType>> TypedResources(ResourceSet resourceSet) { var matchedResources = resourceSet.Resources.Select(x => new { matched = false, resource = x }); foreach (var type in Configuration.ResourceTypesBySchema[resourceSet.Scheme]) { foreach (var rsrc in matchedResources) { if (!rsrc.matched && rsrc.resource.IsOfType(type)) yield return new Tuple<ResourceId, ResourceType>(rsrc.resource, type); } } }
private void CreateProject(IResourceIdFactory resourceIdFactory) { _project = new Project(resourceIdFactory.ResourceFromFilePath(_path)); _project.Builder = this; var files = GetRecursiveFileEnumeration(_path); files = _fileFilter.Filter(files); var resources = files.Select(x => resourceIdFactory.ResourceFromFilePath(x)); resources = resources.MemoizeAll(); _files = new ResourceSet(resources, "file"); }