public function having($annotation)
    {
        $methods = [];

        foreach ($this->reflectInto($this->reference) as $method) {
            if ($this->hasAnnotation($annotation, $method)) {
                $methods[] = $method->getName();
            }
        }

        // We'll reverse the results to ensure that this package's
        // hooks are called *before* the user's.

        return array_reverse($methods);
    }