コード例 #1
0
 /// <summary>
 /// Recursively collects names of base <see cref="FeatureDefinition"/>s
 /// </summary>
 /// <param name="name">Feature name</param>
 /// <param name="set">Collection that stores names that may be used to disable the feature with given <paramref name="name"/></param>
 private void AddBaseDefinitionNamesToSet(string name, ISet <string> set)
 {
     foreach (var feature in AllDefinitions.Where(n => n.Metadata.Name.Equals(name, StringComparison.Ordinal)))
     {
         set.Add(feature.Metadata.Name);
         if (feature.Metadata.BaseDefinition == null)
         {
             continue;
         }
         foreach (var baseDefinition in feature.Metadata.BaseDefinition)
         {
             AddBaseDefinitionNamesToSet(baseDefinition, set);
         }
     }
 }
コード例 #2
0
        public WurmLogDefinitions()
        {
            foreach (var logDefinition in Definitions)
            {
                AddLogTypeMapping(logDefinition.LogPrefix, logDefinition.LogType);
            }

            var allTypesCount       = AllLogTypes.Count();
            var allDefinitionsCount = AllDefinitions.Count();

            if (allTypesCount != allDefinitionsCount)
            {
                throw new InvalidOperationException("AllDefinitions != AllLogTypes");
            }
        }
コード例 #3
0
 private static void Register(AccountDefinition worker)
 {
     _prefixToAccount[worker.Prefix] = worker;
     AllDefinitions.Add(worker);
 }