Prefix = prefix;
LocalName = local;
NS = ns;
- Hash = prefix.GetHashCode () + local.GetHashCode () + ns.GetHashCode ();
+ Hash = local.GetHashCode () + (prefix.Length > 0 ? prefix.GetHashCode () : 0);
}
public string Prefix;
public string NS;
public int Hash;
+ string prefixed_name_cache;
+
public override bool Equals (object other)
{
XmlNameEntry e = other as XmlNameEntry;
{
return Hash;
}
+
+ public string GetPrefixedName (XmlNameEntryCache owner)
+ {
+ if (prefixed_name_cache == null)
+ prefixed_name_cache =
+ owner.GetAtomizedPrefixedName (Prefix, LocalName);
+ return prefixed_name_cache;
+ }
}
}