System.Xml.Serialization.CodeGenerator.StoreMember C# (CSharp) Method

StoreMember() private method

private StoreMember ( MemberInfo memberInfo ) : void
memberInfo MemberInfo
return void
        internal void StoreMember(MemberInfo memberInfo)
        {
            if (memberInfo is FieldInfo)
            {
                FieldInfo fieldInfo = (FieldInfo)memberInfo;
                if (fieldInfo.IsStatic)
                {
                    _ilGen.Emit(OpCodes.Stsfld, fieldInfo);
                }
                else
                {
                    _ilGen.Emit(OpCodes.Stfld, fieldInfo);
                }
            }
            else
            {
                System.Diagnostics.Debug.Assert(memberInfo is PropertyInfo);
                PropertyInfo property = (PropertyInfo)memberInfo;
                if (property != null)
                {
                    MethodInfo setMethod = property.SetMethod;

                    if (setMethod == null)
                    {
                        setMethod = GetPropertyMethodFromBaseType(property, false);
                    }

                    System.Diagnostics.Debug.Assert(setMethod != null);
                    Call(setMethod);
                }
            }
        }