YamlUtility.Grammar.YamlParser.ParsePlainTextInFlowMoreLine C# (CSharp) Method

ParsePlainTextInFlowMoreLine() private method

private ParsePlainTextInFlowMoreLine ( bool &success ) : string
success bool
return string
        private string ParsePlainTextInFlowMoreLine(out bool success)
        {
            int errorCount = Errors.Count;
            StringBuilder text = new StringBuilder();
            int start_position = position;

            ParseIgnoredBlank(out success);

            string str = ParseLineFolding(out success);
            if (success) { text.Append(str); }
            else
            {
                Error("Failed to parse LineFolding of PlainTextInFlowMoreLine.");
                position = start_position;
                return text.ToString();
            }

            ParseIndent(out success);
            if (!success)
            {
                Error("Failed to parse Indent of PlainTextInFlowMoreLine.");
                position = start_position;
                return text.ToString();
            }

            ParseIgnoredSpace(out success);

            int counter = 0;
            while (true)
            {
                ErrorStatck.Push(errorCount); errorCount = Errors.Count;
                while (true)
                {
                    str = ParsePlainTextCharInFlow(out success);
                    if (success)
                    {
                        ClearError(errorCount);
                        text.Append(str);
                        break;
                    }

                    str = ParseSpacedPlainTextCharInFlow(out success);
                    if (success)
                    {
                        ClearError(errorCount);
                        text.Append(str);
                        break;
                    }

                    break;
                }
                errorCount = ErrorStatck.Pop();
                if (!success) { break; }
                counter++;
            }
            if (counter > 0) { success = true; }
            if (!success)
            {
                Error("Failed to parse ((PlainTextCharInFlow / SpacedPlainTextCharInFlow))+ of PlainTextInFlowMoreLine.");
                position = start_position;
            }

            if (success) { ClearError(errorCount); }
            return text.ToString();
        }
YamlParser