void ResolvePendingReferences ()
{
foreach (var fixup in pending_name_references) {
foreach (var name in fixup.Names) {
bool isFullyInitialized;
// FIXME: sort out relationship between name_scope and name_resolver. (unify to name_resolver, probably)
var obj = name_scope.FindName (name) ?? name_resolver.Resolve (name, out isFullyInitialized);
if (obj == null)
throw new XamlObjectWriterException (String.Format ("Unresolved object reference '{0}' was found", name));
if (!AddToCollectionIfAppropriate (fixup.ParentType, fixup.ParentMember, fixup.ParentValue, obj, null)) // FIXME: is keyObj always null?
fixup.ParentMember.Invoker.SetValue (fixup.ParentValue, obj);
}
}
}
}