public virtual AttVal ParseAttrs(MutableBoolean isempty)
{
var delim = new MutableInteger();
var asp = new MutableObject();
var php = new MutableObject();
AttVal list = null;
while (!EndOfInput())
{
string attribute = ParseAttribute(isempty, asp, php);
AttVal av;
if (attribute == null)
{
/* check if attributes are created by ASP markup */
if (asp.Object != null)
{
av = new AttVal(list, null, (Node) asp.Object, null, '\x0000', null, null);
list = av;
continue;
}
/* check if attributes are created by PHP markup */
if (php.Object != null)
{
av = new AttVal(list, null, null, (Node) php.Object, '\x0000', null, null);
list = av;
continue;
}
break;
}
string val = ParseValue(attribute, false, isempty, delim);
if (IsValidAttrName(attribute))
{
av = new AttVal(list, null, null, null, delim.Val, attribute, val);
av.Dict = AttributeTable.DefaultAttributeTable.FindAttribute(av);
list = av;
}
else
{
//av = new AttVal(null, null, null, null, 0, attribute, val);
Report.AttrError(this, Token, val, Report.BAD_ATTRIBUTE_VALUE);
}
}
return list;
}