+1 Missed this one for a long time :) 

-- 
Adrian Zubarev 

Am 17. Mai 2016 um 16:25:10, David Hart via swift-evolution 
([email protected](mailto:[email protected])) schrieb:

> 
> +1 Seems like it could enable very powerful behaviour going forward
> 
> > On 16 May 2016, at 23:06, Joe Groff via swift-evolution 
> > <[email protected]> wrote:
> > 
> > Currently, we parse a type after 'as[?!]' and 'is'. This is mostly what 
> > you'd expect, but does lead to problems when an 'as' expression appears as 
> > part of a comparison:
> > 
> > 20 as Int64 < y as Int64 // error, '>' expected to close generic parameter 
> > list Int64<y>
> > 
> > Looking to the future, many people have also expressed interest in the 
> > ability to do dynamic type checks against metatype values, not only static 
> > types, as in:
> > 
> > class Base {}
> > class DerivedA {}
> > class DerivedB {}
> > 
> > var x: Base.Type = DerivedA
> > 
> > DerivedA() as? x // succeeds
> > DerivedB() as? x // fails
> > 
> > If we accept 
> > https://github.com/apple/swift-evolution/blob/master/proposals/0090-remove-dot-self.md,
> >  dropping the '.self' requirement to refer to type objects, then I think we 
> > should also change 'is' and 'as' to parse the expression grammar on their 
> > right-hand side, leaving it up to the normal expression disambiguation rule 
> > to handle angle brackets. This solves the '20 as Int64 < x' problem, and 
> > prepares us to support dynamic is/as queries in the future. (To be clear, 
> > designing dynamic queries should be its own discussion.) What do you all 
> > think?
> > 
> > -Joe
> > _______________________________________________
> > 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
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to