Esempio n. 1
0
        private static Dictionary <T, UnitAttribute> Init <T>()
        {
            var type = typeof(T);
            var a    = new Dictionary <T, UnitAttribute>();

            foreach (T unit in InternalHelpers.GetEnumValues <T>())
            {
                var name = Enum.GetName(type, unit);

                var attr = type.GetField(name)
                           .GetCustomAttributes(typeof(UnitAttribute), false)
                           .Cast <UnitAttribute>()
                           .FirstOrDefault();

                if (attr != null)
                {
                    a.Add(unit, attr);
                }
            }

            return(new Dictionary <T, UnitAttribute>(a));
        }