Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:7276 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 48187 invoked by uid 1010); 22 Jan 2004 15:45:49 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 48163 invoked from network); 22 Jan 2004 15:45:48 -0000 Received: from unknown (HELO xaxa.search.ch) (195.141.85.118) by pb1.pair.com with SMTP; 22 Jan 2004 15:45:48 -0000 Received: from localhost (localhost [127.0.0.1]) by xaxa.search.ch (Postfix) with ESMTP id 153506D82E; Thu, 22 Jan 2004 16:45:48 +0100 (CET) Received: by xaxa.search.ch (Postfix, from userid 65534) id 12F586DB6B; Thu, 22 Jan 2004 16:45:47 +0100 (CET) Received: from cschneid.com (ultrafilter2-i [192.168.85.3]) by xaxa.search.ch (Postfix) with ESMTP id 786FF6D82E; Thu, 22 Jan 2004 16:45:46 +0100 (CET) Message-ID: <400FF029.1090804@cschneid.com> Date: Thu, 22 Jan 2004 16:45:45 +0100 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031009 X-Accept-Language: de-ch, en-us, en MIME-Version: 1.0 To: Stephane Drouard Cc: internals@lists.php.net References: <20040122144819.42410.qmail@pb1.pair.com> In-Reply-To: <20040122144819.42410.qmail@pb1.pair.com> X-Enigmail-Version: 0.76.7.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on xaxa.search.ch X-Spam-Level: X-Spam-Status: No, hits=-1.4 required=5.0 tests=BAYES_20 autolearn=ham version=2.61 X-Virus-Scanned: by AMaViS 0.3.12pre8 Subject: Re: base class From: cschneid@cschneid.com (Christian Schneider) Stephane Drouard wrote: > Currently it is not possible to call parent::__construct() if the class does not derived > from another one, or none of its parent implements a constructor. I agree that it should always be possible to call parent::__construct() (at least if a base class exists :-)). > __construct() > __destruct() > Empty. Agreed. If the method actually exists or is somehow magic is an implementation detail. But one should always be able to call parent::__construct/__destruct. > __clone() > Does the bit for bit copy of the object. I think this and all other 'magic' methods you mention should be empty. Right now a bit cloning is done before __clone() is called, I can live with the minimal performance penalty this might cause. Keeps things simple and calling a non-implemented parent::__ never causes any harm like this. - Chris