Latest 0.4.0
Homepage https://github.com/jzucker2/SwiftyKit
License MIT
Platforms ios 10.0
Frameworks UIKit
Authors

CI Status
Version
License
Platform

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

Installation

SwiftyKit is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod "SwiftyKit"

Notes

/// A type-erased key path, from any root type to any resulting value type.
public class AnyKeyPath : Hashable {

/// The root type for this key path.
public static var rootType: Any.Type { get }

/// The value type for this key path.
public static var valueType: Any.Type { get }

/// The hash value.
///
/// Hash values are not guaranteed to be equal across different executions of
/// your program. Do not save hash values to use during a future execution.
final public var hashValue: Int { get }

/// Returns a Boolean value indicating whether two values are equal.
///
/// Equality is the inverse of inequality. For any values `a` and `b`,
/// `a == b` implies that `a != b` is `false`.
///
/// - Parameters:
///   - lhs: A value to compare.
///   - rhs: Another value to compare.
public static func ==(a: AnyKeyPath, b: AnyKeyPath) -> Bool
}

/// A partially type-erased key path, from a concrete root type to any
/// resulting value type.
public class PartialKeyPath<Root> : AnyKeyPath {
}

/// A key path from a specific root type to a specific resulting value type.
public class KeyPath<Root, Value> : PartialKeyPath<Root> {
}

/// A key path that supports reading from and writing to the resulting value.
public class WritableKeyPath<Root, Value> : KeyPath<Root, Value> {
}

/// A key path that supports reading from and writing to the resulting value
/// with reference semantics.
public class ReferenceWritableKeyPath<Root, Value> : WritableKeyPath<Root, Value> {
}

To Do

  • [ ] Add core data tests
  • [ ] Add a data controller class

Author

jzucker2, [email protected]

License

SwiftyKit is available under the MIT license. See the LICENSE file for more info.

Latest podspec

{
    "name": "SwiftyKit",
    "version": "0.4.0",
    "summary": "A collection of best practices and quick tricks.",
    "description": "A collection of useful programming paradigms and shared code between Swift projects.",
    "homepage": "https://github.com/jzucker2/SwiftyKit",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "authors": {
        "jzucker2": "[email protected]"
    },
    "source": {
        "git": "https://github.com/jzucker2/SwiftyKit.git",
        "tag": "0.4.0"
    },
    "social_media_url": "https://twitter.com/jzucker",
    "platforms": {
        "ios": "10.0"
    },
    "source_files": "SwiftyKit/Classes/**/*",
    "frameworks": "UIKit",
    "pushed_with_swift_version": "4.0"
}

Pin It on Pinterest

Share This