System.Xaml.XamlXmlReader.ReadStartMember C# (CSharp) Method

ReadStartMember() public method

public ReadStartMember ( ) : void
return void
		void ReadStartMember ()
		{
			var xt = types.Peek ();
			var name = r.LocalName;
			int idx = name.IndexOf ('.');
			if (idx >= 0) {
				string tname = name.Substring (0, idx);
				var xtn = new XamlTypeName (r.NamespaceURI, tname, null);
				xt = SchemaContext.GetXamlType (xtn) ?? new XamlType (xtn.Namespace, xtn.Name, null, SchemaContext);
				name = name.Substring (idx + 1);
			}

			var xm = (XamlMember) FindStandardDirective (name, AllowedMemberLocations.MemberElement) ?? xt.GetAttachableMember (name) ?? xt.GetMember (name);
			if (xm == null)
				// create unknown member.
				xm = new XamlMember (name, xt, false); // FIXME: not sure if isAttachable is always false.
			current = current_member = xm;
			members.Push (xm);

			node_type = XamlNodeType.StartMember;
			inside_object_not_member = false;
			
			r.Read ();
		}