final public function getModuleDir()
    {
        if (! $this->moduleDir) {
            $reflection      = new ReflectionClass(static::class);
            $this->moduleDir = dirname($reflection->getFileName());
        }

        return $this->moduleDir;
    }