DCPU16_ASM.Assembler.Parser.ParseDat C# (CSharp) 메소드

ParseDat() 개인적인 메소드

private ParseDat ( string line ) : bool
line string
리턴 bool
		private bool ParseDat(string line)
        {
            var dataFields = new List<string>();

            var lineData = dataNextLine != true ? line.Substring(3, line.Length - 3).Trim() : line.Trim();
            foreach (var field in lineData.Split(','))
            {
                if (field.Trim() == string.Empty) continue;
                if (dataFields.Count == 0)
                {
                    dataFields.Add(field);
                }
                else
                {
                    var count = 0;
                    var last = -1;
                    var lastStr = dataFields[dataFields.Count - 1];

                    while ((last = lastStr.IndexOf('\"', last + 1)) != -1)
                    {
                        count++;
                    }

                    if (count == 1)
                    {
                        dataFields[dataFields.Count - 1] += "," + field;
                    }
                    else
                    {
                        dataFields.Add(field);
                    }
                }
            }

			GenerateInstructionsForDataFields(dataFields);

            return line.EndsWith(",") ? true : false;
        }