コード例 #1
0
        private static void RegisterUserDefinedMacross(string filepath)
        {
            string filedat;

            using (var stream = new StreamReader(filepath))
            {
                filedat = stream.ReadToEnd();
            }
            UserDefinedMacross.Register(Table, filedat);
        }
コード例 #2
0
        private static void RegisterUserDefinedMacrossIncludingParsing(string filepath, out string fileData)
        {
            string filedat;

            using (var stream = new StreamReader(filepath))
            {
                filedat = stream.ReadToEnd();
            }
            UserDefinedMacross.RegisterWithParsingFile(Table, ref filedat);
            fileData = filedat;
        }
コード例 #3
0
        private static void RegisterWitoutBuilding(TableOfMacros table, string fileData)
        {
            int positionOfMacros = 0;
            int searchAfter      = 0;

            while ((positionOfMacros = fileData.IndexOf("#macro", searchAfter, StringComparison.Ordinal)) != -1)
            {
                string        macrosData = ParseUtilites.GetMacrossData(fileData, positionOfMacros);
                List <string> split      = new List <string>(ParseUtilites.SplitAvoidingRedundantCharacters(macrosData));
                string        macrosName = StaticData.MacroSeparator + split[0];
                if (table.Contains(macrosName))
                {
                    throw new Exception("MacroDefinitionAlreadyExists!");
                }
                split.RemoveAt(0);
                Macross macrossToAdd = new UserDefinedMacross(macrosName, split);
                table.Add(macrosName, macrossToAdd);
                searchAfter = positionOfMacros + 1;
            }
        }