public function getPointcut(): Pointcut
    {
        if ($this->pointcut === null) {
            // Inject these dependencies and make them lazy!

            /** @var Pointcut\PointcutLexer $lexer */
            $lexer = $this->container->get('aspect.pointcut.lexer');

            /** @var Pointcut\PointcutParser $parser */
            $parser = $this->container->get('aspect.pointcut.parser');

            $tokenStream    = $lexer->lex($this->pointcutExpression);
            $this->pointcut = $parser->parse($tokenStream);
        }

        return $this->pointcut;
    }