Re: Type hinting

From: Date: Wed, 26 May 2010 22:30:27 +0000
Subject: Re: Type hinting
References: 1 2 3 4  Groups: php.internals 
Request: Send a blank email to internals+get-48482@lists.php.net to get a copy of this message
On Wed, 26 May 2010, Davey Shafik wrote: > Would it be possible to support two syntaxes: > > function foo( (int) $bar) { } // auto-cast to int > function foo(int $bar) { } // require int I think that's a brilliant plan. We won't ever agree on whether we want either strict type hinting, or casting typehinting and this provides both possibilities with the following pros: - The syntax is consistent for casting. We already support (int) $bar anywhere else. - The syntax is consistent for strict type checking. We already support throwing errors with foo(ClassName $bar). - There are no new conversion rules that can confuse people. - Type checking with "int $bar" will stay fast, as we only have to compare type. > There has never been casting to objects other than stdClass, so I > don't think it conflicts that there is no: > > function foo( (DBAdapter) $bar) { } Something we could add later? :) regards, Derick -- http://derickrethans.nl | http://xdebug.org Like Xdebug? Consider a donation: http://xdebug.org/donate.php twitter: @derickr and @xdebug

« previous php.internals (#48482) next »