Name einer als Parameter übergebenen Variablen bzw. einen generischen Typs

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Rabattcode für die heise MacDev 2020: Macoun20

Aufgrund der Corona-Krise: Die Veröffentlichung von Stellenangeboten und -gesuchen ist bis 31.12.2020 kostenfrei. Das beinhaltet auch Angebote und Gesuche von und für Freischaffende und Selbstständige.

  • Name einer als Parameter übergebenen Variablen bzw. einen generischen Typs

    Hallo zusammen,

    ich bin noch relativ neu was die Entwicklung von Swift angeht, und wäre danke für jede Hilfe. Bisher habe war ich in C# Unterwege und da gibt es für mein Problem CallerMemberName.

    Best Dank


    @propertyWrapper
    public struct ChangeValue<Value> {
    public let viewModelName: String
    public let propertyName: String
    private var cachedValue: Value?
    public init(viewModelName: String = #function, key: String) {
    self.viewModelName = viewModelName
    // ich würde hier gern wissen, wie der Name des genereischen Typs ist (Property aus ViewModel! Ich bekomme immer nur "String"
    self.propertyName = String(describing: Value.self)
    }
    public var wrappedValue: Value {
    mutating get {
    if cachedValue == nil { fetch() }
    return cachedValue!
    }
    }
    public mutating func fetch() {
    cachedValue = nil
    }
    }


    Lösung in C# wäre [CallerMemberName]

    protected bool UpdateProperty<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
    {
    if (Equals(field, value)) { return false; }
    field = value;
    RaisePropertyChanged(propertyName);
    return true;
    }