+1 Makes sense, it's a basic failable conversion. On Fri, Jul 22, 2016 at 2:09 PM, 王 黎明 <swift-evolution@swift.org> wrote:
> +0. > > Maybe off topic. > > The problem is there’s no process for the validty of the parameter. > > The source of UnicodeScala: > > public init(_ v: UInt32) { > // Unicode 6.3.0: > // > // D9. Unicode codespace: A range of integers from 0 to 10FFFF. > // > // D76. Unicode scalar value: Any Unicode code point except > // high-surrogate and low-surrogate code points. > // > // * As a result of this definition, the set of Unicode scalar > values > // consists of the ranges 0 to D7FF and E000 to 10FFFF, inclusive. > > _precondition(v < 0xD800 || v > 0xDFFF, > "high- and low-surrogate code points are not valid Unicode scalar > values") > _precondition(v <= 0x10FFFF, "value is outside of Unicode codespace") > > self._value = v > } > > > 55357 == 0xD83D , not less than 0xD800 > > The _precondition like assert. > > > > > > 在 2016年7月22日,上午10:23,Karl via swift-evolution <swift-evolution@swift.org> > 写道: > > +1. I was trying to build a naive random string generator the other day > (but I wanted it to occasionally spit out extended clusters like emojis), > and was also surprised that the initialiser crashes. > > Could probably be filed under “bug fixes”, even. > > Karl > > On 22 Jul 2016, at 00:28, Chris Lattner via swift-evolution < > swift-evolution@swift.org> wrote: > > Hello Swift community, > > The review of "SE-0128: Change failable UnicodeScalar initializers to > failable" begins now and runs through July 24. The proposal is available > here: > > > https://github.com/apple/swift-evolution/blob/master/proposals/0128-unicodescalar-failable-initializer.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 contribute to 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 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 > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution > > > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution > > > > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution > >
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution