2015-03-30 13 views
8

Im uzyskiwanie dziwne ostrzeżenie w edytorze który muszę pomóc zrozumieć, co chcePróba przechowywania mienia „” w ramach własnej willSet

Attempting to store to property 'someProperty' within its own willSet, which is about to be overwritten by the new value 

var someProperty:SomeClass! { 
    willSet { someProperty?.someFunction() } // Get warning: Attempting to store to property 'someProperty' within its own willSet, which is about to be overwritten by the new value 
    didSet { ... } 
} 

Kiedy uruchamiam go robi co chcę zrobić bez żadnych awarii ani ostrzeżeń w konsoli, więc widzę to jako fałszywe pozytywne. Czy mogę go w jakikolwiek sposób tłumić, ponieważ jest irytujący? :(

+0

Co to jest, czego chcesz? ( – Wain

+0

) Podczas ustawiania nowej wartości chcę, żeby stary coś zrobił zanim zostanie zastąpiony. – Arbitur

Odpowiedz

14

Jest to znany bug, poinformował w Apple Developer Forum: https://devforums.apple.com/message/1065306#1065306, z obejścia dodawania wyraźnego self:

willSet { 
     self.someProperty?.someFunction() 
    } 

Aktualizacja: nie mogę odtworzyć problem z Xcode 7.3.1 lub Xcode 8 więcej, więc wydaje się, że teraz jest naprawiony

+0

Dzięki, mam to potwierdzone :) – Arbitur