private void ReadLexer(XmlReader reader)
{
if (reader.HasAttributes)
{
while (reader.MoveToNextAttribute())
{
string attrName = reader.Name.ToLower();
switch (attrName)
{
case "whitespacechars":
this._lexing_WhitespaceChars = reader.Value;
break;
case "wordchars":
this._lexing_WordChars = reader.Value;
break;
case "lexername":
this._lexing_Language = reader.Value;
break;
case "linecommentprefix":
this._lexing_LineCommentPrefix = reader.Value;
break;
case "streamcommentprefix":
this._lexing_StreamCommentPrefix = reader.Value;
break;
case "streamcommentsuffix":
this._lexing_StreamCommentSuffix = reader.Value;
break;
}
}
reader.MoveToElement();
}
if (!reader.IsEmptyElement)
{
reader.Read();
while (!(reader.NodeType == XmlNodeType.EndElement && reader.Name.Equals("lexer", StringComparison.OrdinalIgnoreCase)))
{
if (reader.NodeType == XmlNodeType.Element)
{
if (reader.Name.Equals("properties", StringComparison.OrdinalIgnoreCase))
this.ReadLexerProperties(reader);
else if (reader.Name.Equals("keywords", StringComparison.OrdinalIgnoreCase))
this.ReadLexerKeywords(reader);
}
}
}
reader.Read();
}