Example #1
0
        public EnumLoader(string path)
        {
            this._Paths       = new Dictionary <string, string>();
            this._LoadedEnums = new Dictionary <string, ParseEnumFile>();

            foreach (var inputPath in Directory.GetFiles(path, "*.enum.xml", SearchOption.AllDirectories))
            {
                var name = ParseEnumFile.GetNameFromFile(inputPath);
                this._Paths.Add(name, inputPath);
            }
        }
Example #2
0
        public ParseEnumFile LoadEnum(string name)
        {
            if (name == null)
            {
                throw new ArgumentNullException("name");
            }

            if (this._Paths.ContainsKey(name) == false)
            {
                throw new ArgumentException("no such enum", "name");
            }

            if (this._LoadedEnums.ContainsKey(name) == true)
            {
                return(this._LoadedEnums[name]);
            }

            var e = ParseEnumFile.LoadFile(this._Paths[name]);

            this._LoadedEnums.Add(name, e);
            return(e);
        }