Hello, I have a user question regarding the proposed range types that replace the old range/interval.
The old hierachy allowed me to turn ranges to SQL expressions through the following mapping (see https://github.com/groue/GRDB.swift/blob/v0.57.0/GRDB/FetchRequest/SQLOperator.swift#L335-L365) 1. Range<BidirectionalIndexType> expr BETWEEN self.startIndex AND self.endIndex.predecessor() 2. ClosedInterval expr BETWEEN self.start AND self.end 3. HalfOpenInterval expr >= start AND x < end This would let me generate SQL for 0..<18 and "A"..<"B", as below: // SELECT * FROM "persons" WHERE ("age" BETWEEN 0 AND 17) Person.filter((0..<18).contains(Col.age)) // SELECT * FROM "persons" WHERE ("age" BETWEEN 0 AND 17) Person.filter((0...17).contains(Col.age)) // SELECT * FROM "persons" WHERE ("name" BETWEEN 'A' AND 'z') Person.filter(("A"..."z").contains(Col.name)) // SELECT * FROM "persons" WHERE (("name" >= 'A') AND ("name" < 'z')) Person.filter(("A"..<"z").contains(Col.name)) Will it still be possible with the new protocol and types? Especially, how to I generate "BETWEEN 0 AND 17" from 0..<18 without a supporting collection that gives me the predecessor of 18? Gwendal Roué > Le 10 avr. 2016 à 23:41, Chris Lattner via swift-evolution > <[email protected]> a écrit : > > Hello Swift community, > > The review of "A New Model for Collections and Indices" begins now and runs > through April 18th. The proposal is available here: > > > https://github.com/apple/swift-evolution/blob/master/proposals/0065-collections-move-indices.md > > Reviews are an important part of the Swift evolution process. All reviews > should be sent to the swift-evolution mailing list at: > https://lists.swift.org/mailman/listinfo/swift-evolution > or, if you would like to keep your feedback private, directly to the review > manager. > > > What goes into a review? > > The goal of the review process is to improve the proposal under review > through constructive criticism and, eventually, determine the direction of > Swift. When writing your review, here are some questions you might want to > answer in your review: > > * What is your evaluation of the proposal? > * Is the problem being addressed significant enough to warrant a change > to Swift? > * Does this proposal fit well with the feel and direction of Swift? > * If you have you used other languages or libraries with a similar > feature, how do you feel that this proposal compares to those? > * How much effort did you put into your review? A glance, a quick > reading, or an in-depth study? > > More information about the Swift evolution process is available at > > https://github.com/apple/swift-evolution/blob/master/process.md > > Thank you, > > -Chris Lattner > Review Manager > > > _______________________________________________ > swift-evolution mailing list > [email protected] > https://lists.swift.org/mailman/listinfo/swift-evolution _______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
