public override IEnumerable<NamespaceDeclaration> GetNamespacePrefixes ()
{
XamlParserFrame currentFrame = this._stack.CurrentFrame;
Dictionary<string, string> iteratorVariable1 = new Dictionary<string, string>();
while (currentFrame.Depth > 0) {
if (currentFrame._namespaces != null) {
foreach (NamespaceDeclaration iteratorVariable2 in currentFrame.GetNamespacePrefixes()) {
if (iteratorVariable1.ContainsKey(iteratorVariable2.Prefix)) {
continue;
}
iteratorVariable1.Add(iteratorVariable2.Prefix, null);
yield return iteratorVariable2;
}
}
currentFrame = (XamlParserFrame)currentFrame.Previous;
}
if (this._prescopeNamespaces != null) {
foreach (KeyValuePair<string, string> iteratorVariable3 in this._prescopeNamespaces) {
if (iteratorVariable1.ContainsKey(iteratorVariable3.Key)) {
continue;
}
iteratorVariable1.Add(iteratorVariable3.Key, null);
yield return new NamespaceDeclaration(iteratorVariable3.Value, iteratorVariable3.Key);
}
}
}