Пример #1
0
        /// <summary>
        /// Constructs a new instance of <see cref="HttpHeaderValueLexer"/>.
        /// </summary>
        /// <param name="httpHeaderName">The name of the HTTP header being parsed.</param>
        /// <param name="httpHeaderValue">The value of the HTTP header being parsed.</param>
        /// <param name="value">The value of the current parsed item. If the item type is quoted-string, this returns the unescaped and unquoted string value. For other item types,
        /// the value is the same as the original text from the header.</param>
        /// <param name="originalText">The original text of the current parsed item. If the item type is quoted-string, this returns the escaped and quoted string value straight from the header.
        /// For other item types, the original text is the same as the item value.</param>
        /// <param name="startIndexOfNextItem">The start index of the next item to be parsed.</param>
        private HttpHeaderValueLexer(string httpHeaderName, string httpHeaderValue, string value, string originalText, int startIndexOfNextItem)
        {
            this.httpHeaderName  = httpHeaderName;
            this.httpHeaderValue = httpHeaderValue;
            this.value           = value;
            this.originalText    = originalText;

            // Skip over white spaces.
            if (this.httpHeaderValue != null)
            {
                HttpUtils.SkipWhitespace(this.httpHeaderValue, ref startIndexOfNextItem);
            }

            this.startIndexOfNextItem = startIndexOfNextItem;
        }