Is there a way to get the documentor to pick up a custom tag. One I’ve started using is @implements - which notes what interface implementation requirement is fulfilled by the function. Example of what I’m babbling about…
/**
* A function that is implementing a method for an interface in a concrete class
*
* @param string
* @implements SomeInterface
*
* @return string
* @throws FatalException
*/
I saw such a thing at a presentation once, PHPLondon 2006 I think, could have been someone from IBM talking about SOA IIRC. Marcus might remember better than I.
The presenter seemed to get a lot of questions about scalability and the likely time this kind of operation would take, as I recall.
I believe you are meant to use @package packagename to group the concrete class and its interface and phpdocs will automatically work out the inheritance.
/**
* @package Example
*/
interface A {
public function foobar() {}
}
/**
* @package Example
*/
class B implements A {
public function foobar() { return 0; }
}
(going on memory, I hope it actually does work or I’ll look stupid :P)