Ao contrário do Objective-C, o Swift não tem pré-processador, então ainda existe uma maneira de descontinuar manualmente os membros de uma classe?
Estou procurando algo semelhante a este:
-(id)method __deprecated;
ios
objective-c
swift
c-preprocessor
deprecated
Atomix
fonte
fonte
=
s são substituídos por:
s.*, deprecated: 10.0
vai preteri-lo poriOS 10
,tvOS 10
etc, acho que não devemos combinar*
com um número de versão? Alguma idéia de como fazê-lo melhor?@available(*, deprecated: 10.0)
portanto, é uma idéia muito ruim, se o código não só rodar em iOSIniciando o Swift 3 e o Swift 4 , o número da versão é opcional. Agora você pode simplesmente digitar:
Ou, se você quiser uma mensagem, acompanhe-a:
fonte
@available(*, deprecated, message = "no longer available ...")
ao incluir uma mensagem.Você pode usar isso para corrigir automaticamente suas entradas com sua nova função
Em vez de *, você pode usar swift, para o número da versão rápida.
Funções descontinuadas geram avisos, mas ainda podem ser chamadas. (Aviso)
Funções obsoletas impedem que ele seja chamado inteiramente. (Erro)
ou use outras opções como iOS, macOS, watchOS, tvOS ...
fonte
Se
deployment target
é9.0
e1.
<ObsoletedVersion>
==10.0
-warning
2.
<ObsoletedVersion>
==8.0
-compile error
fonte