Re: [RFC] Static return type

From: Date: Thu, 09 Jan 2020 14:22:44 +0000
Subject: Re: [RFC] Static return type
References: 1 2  Groups: php.internals 
Request: Send a blank email to internals+get-108059@lists.php.net to get a copy of this message
> However, $this is not a real type, and it is unclear what the advantage of specifying $this rather than static would be from a type system level perspective. Perhaps not from a "type system level", but from a more broad "enforced contract" level. E.g. IDEs or code inspection tools can warn if a method will not return $this. This also means recursive calls also need to return $this instead of static. class C { function foo(): static { return clone $this; } function bar(): $this { return $this->foo(); // IDE can complain. } } On Thu, 9 Jan 2020 at 15:07, Larry Garfield <larry@garfieldtech.com> wrote: > On Wed, Jan 8, 2020, at 5:42 AM, Nikita Popov wrote: > > Hi internals, > > > > I would like to propose the following RFC, which allows using "static" > as a > > return type: > > > > https://wiki.php.net/rfc/static_return_type > > > > While I'm personally not a fan of late static binding, we do support it > and > > people do use it quite heavily, so I think we should also support it in > > return types. > > > > Regards, > > Nikita > > > Is "squee!" an appropriate response on the list? For interface authors > this is a huge deal. > > --Larry Garfield > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > >

« previous php.internals (#108059) next »