Beispiel #1
0
 internal static void _LinkDependenciesImpl(IPlan plan, TaskMap<ModuleName, ITarget> taskMap, Application instance,
                                     ITargetDescription instanceDescription, CancellationToken token)
 {
     foreach (var dependency in instanceDescription.Dependencies)
     {
         if (instance.IsLinkedTo(dependency))
             continue;
         var dependencyDescription = plan.TargetDescriptions[dependency];
         token.ThrowIfCancellationRequested();
         var dependencyInstance = new Application(taskMap[dependency].Value.Result.Module);
         Application.Link(instance, dependencyInstance);
         _LinkDependenciesImpl(plan, taskMap, dependencyInstance, dependencyDescription, token);
     }
 }