public static function wrap(array &$values)
    {
        $types = new Dictionary;
        self::determineTypes($values, $types);

        return new TypedDictionary($types, $values);
    }
public static function wrap(array &$values)
    {
        $types = new Dictionary;
        self::determineTypes($values, $types);

        return new TypedDictionary($types, $values);
    }
public static function wrap ( array & $ values ) { $ types = new Dictionary ; self :: determineTypes ( $ values , $ types ) ; return new TypedDictionary ( $ types , $ values ) ; }
Customize wrapping of the TypedDictionary - the wrapped array can still
be modified externally so we need to make sure the appropriate types are
propagated

@throws RuntimeException Always
Customize wrapping of the TypedDictionary - the wrapped array can still be modified externally so we need to make sure the appropriate types are propagated