ParseInternal() static private method

static private ParseInternal ( string header, string value ) : HeaderValue
header string
value string
return HeaderValue
Ejemplo n.º 1
0
        private static void ParseValues(string name, IList <HeaderValue> values, string valuesString)
        {
            StringBuilder value      = new StringBuilder(128);
            bool          isInString = false;
            bool          isEscape   = false;

            for (int index = 0; index < valuesString.Length; index++)
            {
                switch (valuesString[index])
                {
                default:
                    ParseOtherChars(valuesString[index], ref isInString, ref isEscape, value);
                    break;

                case '\\':
                    ParseEscapeChar(valuesString[index], ref isInString, ref isEscape, value);
                    break;

                case '"':
                    ParseStringChar(valuesString[index], ref isInString, ref isEscape, value);
                    break;

                case ',':
                    ParseSeparatorChar(valuesString[index], ref isInString, ref isEscape, value, values);
                    break;
                }
            }

            if (value.Length > 0)
            {
                values.Add(HeaderValue.ParseInternal(name, value.ToString().Trim()));
            }
        }