TruffleMap<K, V> cloneInternal(boolean includeInternalKeys) { return new TruffleMap<>(this, includeInternalKeys); }
static <K, V> Map<K, V> create(Object languageContext, TruffleObject foreignObject, boolean implementsFunction, Class<K> keyClass, Class<V> valueClass, Type valueType) { if (implementsFunction) { return new FunctionTruffleMap<>(languageContext, foreignObject, keyClass, valueClass, valueType); } else { return new TruffleMap<>(languageContext, foreignObject, keyClass, valueClass, valueType); } }