Re: On abstract methods defined on traits

From: Date: Fri, 03 Aug 2018 19:26:03 +0000
Subject: Re: On abstract methods defined on traits
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-103039@lists.php.net to get a copy of this message
On Fri, Aug 3, 2018 at 11:09 AM Pedro Magalhães <mail@pmmaga.net> wrote: > > Hi internals, > > On the documentation about traits there is a mention to: "Traits support > the use of abstract methods in order to impose requirements upon the > exhibiting class." in > > https://secure.php.net/manual/en/language.oop5.traits.php#language.oop5.traits.abstract > > However, this is not true, and it has never been since traits were > introduced (https://3v4l.org/tYAmu). > > There is a related bug report in > https://bugs.php.net/bug.php?id=75449 > > What currently happens is that (like with normal methods), the method on > the receiving class is used and the method from the trait is simply ignored. > > Although this can be fixed, I wanted your opinion on it as this would be > the only thing from traits that would impose anything on the receiving > class and conflicts with the normal precedence rules. > > Regards, > Pedro It's partly true; an abstract method in a trait will require that the using class to have a method of the same name but nothing else. In my opinion the docs should be changed, not trait behavior.

« previous php.internals (#103039) next »