Differences and Limitations
This page describes differences and caveats in RemObjects Silver vs. Apple's standard Swift implementation. These differences fall into three categories:
Please check out the Language Extensions topic for detailed coverage of the features Silver adds on top of regular Apple Swift. These are few, and only added with extreme caution where necessary to properly embrace all platforms.
These are temporary limitations or differences in our implementation of Swift. They are due to the beta status or that we simply haven't found proper solutions for them yet on all platforms, and our goal is to resolve these over time.
none currently known
The differences listed here are permanent and intrinsic to Silver's implementation of Swift, usually driven by demands of the platforms. We expect these differences to remain indefinitely.
Silver uses the platform String types (with some extensions) which are UTF-16 based, implemented as reference types, and immutable.
Type Extension are limited when the extended class is declared in a different project/assembly, and they do not support (a) adding new fields or stored properties or (b) implementing additional protocols.
On the Cocoa and Island platforms, not every (non-class) type descends from the root
Objectclass. As a result, in Silver types that do not descend from
Objectare not compatible with the Swift-defined
On the Cocoa, protocols cannot be applied to structs