blob: bb0f099fe33b4434334f0c476ed1c478f34f8ce5 [file] [log] [blame]
{
"name": "KeyPathKit",
"version": "1.3.2",
"summary": "KeyPathKit leverages Swift 4 KeyPath type in order to implement a SQL-like data manipulation API",
"description": "Swift 4 has introduced a new type called KeyPath, with allows to access the properties of an object with a very nice syntax. For instance:\n\nlet string = \"Foo\"\nlet keyPathForCount = String.count\n\nlet count = string[keyPath: keyPathForCount] // count == 3\nThe great part is that the syntax can be very concise, because it supports type inference and property chaining.\n\nConsequently, I thought it would be nice to leverage this new concept in order to build an API that allows to perform data manipulation in a very declarative fashion.\n\nSQL is a great language for such manipulations, so I took inspiration from it and implemented most of its standard operators in Swift 4 using KeyPath.\n\nBut what really stands KeyPathKit appart from the competition is its clever syntax that allows to express queries in a very seamless fashion. For instance :\n\ncontacts.filter(where: .lastName == \"Webb\" && .age < 40)",
"homepage": "https://github.com/vincent-pradeilles/KeyPathKit",
"license": {
"type": "MIT",
"file": "LICENSE"
},
"authors": {
"Vincent Pradeilles": "vin.pradeilles+keypathkit@gmail.com"
},
"source": {
"git": "https://github.com/vincent-pradeilles/KeyPathKit.git",
"tag": "1.3.2"
},
"platforms": {
"ios": "9.0",
"tvos": "10.0",
"osx": "10.12",
"watchos": "3.0"
},
"frameworks": "Foundation",
"source_files": "Sources/**/*.swift"
}