public ArrayMemory getConfigValues(String prefix, boolean includingGlobal) {
        if (prefix != null)
            prefix = prefix + ".";

        ArrayMemory result = new ArrayMemory();
        if (includingGlobal)
            if (scope.configuration != null) {
                for (Map.Entry<String, Memory> entry : scope.configuration.entrySet()) {
                    String key = entry.getKey();
                    if (prefix != null && !key.startsWith(prefix)) continue;

                    result.put(key, entry.getValue().fast_toImmutable());
                }
            }

        for (Map.Entry<String, Memory> entry : configuration.entrySet()) {
            String key = entry.getKey();

            if (prefix != null && !key.startsWith(prefix)) continue;
            result.put(key, entry.getValue().fast_toImmutable());
        }
        return result;
    }
Remove all method which does not destruct

@throws Throwable
jphp-runtime/src/php/runtime/env/Environment.java