Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:32788 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 2444 invoked by uid 1010); 15 Oct 2007 18:48:01 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 2429 invoked from network); 15 Oct 2007 18:48:01 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 15 Oct 2007 18:48:01 -0000 Authentication-Results: pb1.pair.com header.from=thekid@thekid.de; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=thekid@thekid.de; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain thekid.de from 212.227.126.187 cause and error) X-PHP-List-Original-Sender: thekid@thekid.de X-Host-Fingerprint: 212.227.126.187 moutng.kundenserver.de Received: from [212.227.126.187] ([212.227.126.187:50195] helo=moutng.kundenserver.de) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 0D/94-39149-EC5B3174 for ; Mon, 15 Oct 2007 14:47:52 -0400 Received: from unterwegs (krlh-590f60b6.pool.einsundeins.de [89.15.96.182]) by mrelayeu.kundenserver.de (node=mrelayeu8) with ESMTP (Nemesis) id 0ML31I-1IhUyR19EH-0008Sp; Mon, 15 Oct 2007 20:47:31 +0200 Message-ID: <002f01c80f5b$d645d340$15b2a8c0@unterwegs> To: References: <7C37FF3A0196094F95430BA95952032211B7C5@s1.mkj.lan> <7C37FF3A0196094F95430BA95952032211B7C7@s1.mkj.lan> <72129346.20071014092922@marcus-boerger.de> <7C37FF3A0196094F95430BA95952032211B7CC@s1.mkj.lan> <19939840.20071014231353@marcus-boerger.de> Date: Mon, 15 Oct 2007 20:47:28 +0200 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.3138 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 X-Provags-ID: V01U2FsdGVkX18XoCwA9eOrvPrifynhZ+IuaPL3x6mEFjCQFdJ KExa7dSbk6UWnxmyMp7UlY39f4y+eFQPto+go4ksJ5fuDcnM5U ++fsLmfP1jq8YoBIkSGZvln9KZOyfIT Subject: Re: [PHP-DEV] Method overloading by method signature From: thekid@thekid.de ("Timm Friebe") Hi, [...] > Later we added type hints to help code readability. Let me jump at this: == function xpath($arg) { if ($arg instanceof DomDocument) { return new DomXPath($arg); } else if ($arg instanceof XmlTree) { return new DomXPath($this->loadXML($arg->getSource())); } else if (is_string($arg)) { return new DomXPath($this->loadXML($arg)); } else { throw new IllegalArgumentException('Unsupported argument type'); } } == vs. == function xpath(DomDocument $arg) { return new DomXPath($arg); } function xpath(XmlTree $arg) { return new DomXPath($this->loadXML($arg->getSource()))); } function xpath($arg) { // Untyped = default if (!is_string($arg)) { throw new IllegalArgumentException('Unsupported argument type'); } return new DomXPath($this->loadXML($arg)); } == If we consider the readability argument only: Which one of the above more readable? You decide:) - Timm