The trait Idable provides a method equalsId that in turn relies on the
method getId(). If this method does not exist on a class mixing in this
trait, the method will fail.
Adding the getId() as an abstract method to the trait will make sure it
is available.
Loading history...
34
}
35
36
return $this->processor;
37
}
38
39
/**
40
* @return Query|$this
41
* @throws \LogicException
42
*/
43
public function query(): Query
44
{
45
if (! $this instanceof EntityRepository) {
46
$error = 'Could not use %s under non-repository class, but %s given';
47
throw new \LogicException(\sprintf($error, Hydrogen::class, static::class));
This check looks for methods that are used by a trait but not required by it.
To illustrate, let’s look at the following code example
The trait
Idable
provides a methodequalsId
that in turn relies on the methodgetId()
. If this method does not exist on a class mixing in this trait, the method will fail.Adding the
getId()
as an abstract method to the trait will make sure it is available.