Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
11/12/09 17:45:45 (14 years ago)
Author:
gkronber
Message:

Worked on plugin infrastructure refactoring. (Fully functional revision). #799

File:
1 moved

Legend:

Unmodified
Added
Removed
  • branches/PluginInfrastructure Refactoring/HeuristicLab.PluginInfrastructure/PluginDescriptionIterator.cs

    r2481 r2488  
    2424using System.Text;
    2525
    26 namespace HeuristicLab.PluginInfrastructure.Manager {
     26namespace HeuristicLab.PluginInfrastructure {
    2727  public static class PluginDescriptionIterator {
    28     public static IEnumerable<PluginDescription> IterateInDependencyOrder(IEnumerable<PluginDescription> pluginDescriptions) {
     28    public static IEnumerable<IPluginDescription> IterateInDependencyOrder(IEnumerable<IPluginDescription> pluginDescriptions) {
    2929      // list to make sure we yield each description only once
    30       List<PluginDescription> yieldedDescriptions = new List<PluginDescription>();
     30      List<IPluginDescription> yieldedDescriptions = new List<IPluginDescription>();
    3131      foreach (var desc in pluginDescriptions) {
    3232        foreach (var dependency in IterateInDependencyOrder(desc.Dependencies)) {
     
    3535            yield return dependency;
    3636          }
    37           if (!yieldedDescriptions.Contains(desc)) {
    38             yieldedDescriptions.Add(desc);
    39             yield return desc;
    40           }
     37        }
     38        if (!yieldedDescriptions.Contains(desc)) {
     39          yieldedDescriptions.Add(desc);
     40          yield return desc;
    4141        }
    4242      }
Note: See TracChangeset for help on using the changeset viewer.