public bool CurrentMemberIsWriteVisible()
        {
            Type allowProtectedForType = null;

            if (AllowProtectedMembersOnRoot && _stack.Depth == 1)
            {
                allowProtectedForType = CurrentType.UnderlyingType;
            }
            return(CurrentMember.IsWriteVisibleTo(LocalAssembly, allowProtectedForType));
        }