Nice idea but I think the code will look ugly On Tue, Dec 12, 2017 at 1:28 PM, Rafael Guerreiro <[email protected]> wrote:
> You actually need a class to wrap the dictionary. > That’s because dictionaries are struct, with copy-on-write. > > With a class, you’ll be able to have it mutable, in a let declaration. > On Mon, Dec 11, 2017 at 11:34 PM Inder Kumar Rathore . via swift-evolution > <[email protected]> wrote: > >> Hi All, >> Today I was writing code and faced a situation where I need to make a >> instance variable a const i.e. it shouldn't accept new values from anywhere >> but the problem is that I want it's content to be mutable. >> >> e.g. >> >> class MyClass { >> var myDict = [String : String]() >> } >> >> >> I want above variable to be constant and if I make it like below >> >> class MyClass { >> let myDict = [String : String]() >> } >> >> Then I cann't add key/value in the myDict like >> >> self.myDict["name"] = "Rathore" >> >> >> I know swift and couldn't find anything related to this. >> >> Can anybody help me? >> >> >> If there is no such method of doing it then I would suggest to either use >> a syntax like >> >> class MyClass { >> const var myDict = [String : String]() >> } >> >> I'm not using *final *here since that make a var not overridable. >> >> >> >> -- >> Best regards, >> Inder Kumar Rathore >> _______________________________________________ >> swift-evolution mailing list >> [email protected] >> https://lists.swift.org/mailman/listinfo/swift-evolution >> > -- Best regards, Inder Kumar Rathore
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
