protected function getDefinition(): Definition
    {
        if (isset(self::$definitions[static::class])) {
            return self::$definitions[static::class];
        }

        $definition = new Definition();

        $this->buildDefinition($definition);

        return self::$definitions[static::class] = $definition;
    }
protected function getDefinition(): Definition
    {
        if (isset(self::$definitions[static::class])) {
            return self::$definitions[static::class];
        }

        $definition = new Definition();

        $this->buildDefinition($definition);

        return self::$definitions[static::class] = $definition;
    }
protected function getDefinition ( ) : Definition { if ( isset ( self :: $ definitions [ static :: class ] ) ) { return self :: $ definitions [ static :: class ] ; } $ definition = new Definition ( ) ; $ this -> buildDefinition ( $ definition ) ; return self :: $ definitions [ static :: class ] = $ definition ; }
Returns the definition.

@return Definition
Returns the definition .