public static function genericKeys() : array
    {
        if (static::$externalContainer) {
            $container = static::$externalContainer;
            // Pimple.
            if (method_exists($container, 'keys')) {
                return $container->keys();
            }
            // PHP-DI.
            if (method_exists($container, 'getKnownEntryNames')) {
                return $container->getKnownEntryNames();
            }
            // ArrayObject
            if (method_exists($container, 'getArrayCopy')) {
                return array_keys($container->getArrayCopy());
            }
            throw new ContainerLogicException(
                'Externale container type[' . get_class($container) . '] provides no known means of accessing'
            );
        }
        if (static::$internalContainer) {
            return array_keys(static::$internalContainer->keys);
        }
        return [];
    }
public static function genericKeys() : array
    {
        if (static::$externalContainer) {
            $container = static::$externalContainer;
            // Pimple.
            if (method_exists($container, 'keys')) {
                return $container->keys();
            }
            // PHP-DI.
            if (method_exists($container, 'getKnownEntryNames')) {
                return $container->getKnownEntryNames();
            }
            // ArrayObject
            if (method_exists($container, 'getArrayCopy')) {
                return array_keys($container->getArrayCopy());
            }
            throw new ContainerLogicException(
                'Externale container type[' . get_class($container) . '] provides no known means of accessing'
            );
        }
        if (static::$internalContainer) {
            return array_keys(static::$internalContainer->keys);
        }
        return [];
    }
public static function genericKeys ( ) : array { if ( static :: $ externalContainer ) { $ container = static :: $ externalContainer ; // Pimple. if ( method_exists ( $ container , 'keys' ) ) { return $ container -> keys ( ) ; } // PHP-DI. if ( method_exists ( $ container , 'getKnownEntryNames' ) ) { return $ container -> getKnownEntryNames ( ) ; } // ArrayObject if ( method_exists ( $ container , 'getArrayCopy' ) ) { return array_keys ( $ container -> getArrayCopy ( ) ) ; } throw new ContainerLogicException ( 'Externale container type[' . get_class ( $ container ) . '] provides no known means of accessing' ) ; } if ( static :: $ internalContainer ) { return array_keys ( static :: $ internalContainer -> keys ) ; } return [ ] ; }
Get list of registered IDs.

External container must have one of these instance methods:
- keys(); Pimple
- getKnownEntryNames(); PHP-DI
- getArrayCopy(); ArrayObject

@return array

@throws ContainerLogicException
If external container provides no known means of listing the IDs.
Get list of registered IDs .