on Fri Apr 29 2016, Hooman Mehr <swift-users-AT-swift.org> wrote:

> Hi,
>
> I am designing APIs that need to support both reference (class/object) and 
> value
> types. I am running into restrictions of `mutating` keyword in my protocols 
> and
> this is causing a lot of duplication of code. In order to understand what I 
> mean
> please take a look at this gist. 
>
> As you see, I have pairs of almost identical declarations: KeyValueStore vs
> KeyValueStoreObject, and AnyDictionaryStore vs AnyDictionaryStoreObject. This
> keeps rapidly growing as I am designing my APIs. Is there any sane way around
> this?

protocol KeyValueStoreObject : class, KeyValueStore {}
protocol AnyDictionaryStoreObject : class, AnyDictionaryStore {}

would probably work for you.

HTH,

-- 
Dave

_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users

Reply via email to