Age | Commit message (Collapse) | Author | |
---|---|---|---|
2014-01-29 | Merge branch 'egil/maps/OTP-11616' | Björn-Egil Dahlberg | |
* egil/maps/OTP-11616: (112 commits) compiler: Add core compile test for maps compiler: Fix core parse for Maps compiler: Fixup #map_pair{} spec erts: Strengthen map_SUITE tests erts: Update maps_fold test to respect maps:fold/3 stdlib: Make maps:fold/3 order-independent erts: Fixup enif_make_map_put on windows erts: Update preloaded erts_internal.beam hipe: Fixup update cerl pretty printer erts: Add map construction to driver API dialyzer: Add maps tests dialyzer: Remove dead code dialyzer: Reflect map_pair core changes in dialyzer hipe: Update cerl pretty printer compiler: Update inliner tests compiler: Squash #c_map_pair_*{} to #c_map_pair{} compiler: Squash #k_map_pair_*{} to #k_map_pair{} preloaded: Fixup export cmp_term in erts_internal erts: Change 'size' argument of enif_get_map_size from int* to size_t* erts: Fix compile error for halfword emulator ... | |||
2014-01-29 | erts: Strengthen map_SUITE tests | Björn-Egil Dahlberg | |
* Add tests for maps:merge/2 * Add tests for maps:update/3 * Test more corner cases | |||
2014-01-29 | erts: Update maps_fold test to respect maps:fold/3 | Björn-Egil Dahlberg | |
2014-01-29 | erts: Fixup enif_make_map_put on windows | Björn-Egil Dahlberg | |
2014-01-29 | erts: Update preloaded erts_internal.beam | Björn-Egil Dahlberg | |
2014-01-29 | erts: Add map construction to driver API | Sverker Eriksson | |
erl_drv_output_term() and erl_drv_send_term() can send messages containing maps with the use of the new ERL_DRV_MAP. The driver API minor version is updated as new functionality is added. | |||
2014-01-29 | preloaded: Fixup export cmp_term in erts_internal | Björn-Egil Dahlberg | |
2014-01-29 | erts: Change 'size' argument of enif_get_map_size from int* to size_t* | Sverker Eriksson | |
2014-01-29 | erts: Fix compile error for halfword emulator | Sverker Eriksson | |
2014-01-29 | erts: Add more tests for the NIF map API | Sverker Eriksson | |
2014-01-29 | erts: Optimize struct ErlNifMapIterator | Sverker Eriksson | |
No need to use 64bit integers on 32bit machines. | |||
2014-01-29 | erts: Fix map iterator bug when reverting from end of map position | Sverker Eriksson | |
and simplify code by ignoring h_limit which is always zero. | |||
2014-01-29 | erts: Simplify some map iterator code | Sverker Eriksson | |
2014-01-29 | erts: Remove use of h_limit which is always zero. | Sverker Eriksson | |
2014-01-29 | erts: Let enif_map_iterator_next/prev return 0 to signal end of map. | Sverker Eriksson | |
2014-01-29 | erts: Do not allow map iterator created without map | Sverker Eriksson | |
2014-01-29 | erts: Increase version for NIF API and reject experimental v2.5 | Sverker Eriksson | |
2014-01-29 | erts: Remove enif_find_map_value | Sverker Eriksson | |
as it does the same thing as enif_get_map_value. Replace with placeholder to be ABI backward compatible on Windows as long as enif_find_map_value is not called. | |||
2014-01-29 | Update map_SUITE to test "unsorted" encoded maps | Björn-Egil Dahlberg | |
2014-01-29 | erts: Let erlang:binary_to_term/1 handle unsorted Maps | Björn-Egil Dahlberg | |
Maps may be encoded with keys in arbitrary order. This is fine, as long as keys are unique. | |||
2014-01-29 | Update map_SUITE to respect term order | Björn-Egil Dahlberg | |
2014-01-29 | erts: Optimize erts_map_update/remove | Sverker Eriksson | |
to not continue comparing keys once it has been found. | |||
2014-01-29 | erts: Fix bug in erts_maps_remove | Sverker Eriksson | |
HRelease was called with wrong arguments and left garbage on heap when key was not found. | |||
2014-01-29 | erts: Update maps serializing to use term order | Björn-Egil Dahlberg | |
* erlang:term_to_binary/1 * erlang:binary_to_term/1 | |||
2014-01-29 | erts: Update maps instructions to use term order | Björn-Egil Dahlberg | |
Maps internally uses term order to store keys in an ordered fashion. | |||
2014-01-29 | erts: Update maps BIFs to use term order | Björn-Egil Dahlberg | |
Maps internally uses term order to store keys in an ordered fashion. | |||
2014-01-29 | erts: Add BIF erts_internal:cmp_term/2 | Björn-Egil Dahlberg | |
Compares terms where integer() < float(). | |||
2014-01-29 | erts: Add cmp_term to compare | Björn-Egil Dahlberg | |
Uses total order of types meaning int < float | |||
2014-01-29 | erts: NIFs Map API fixup | Björn-Egil Dahlberg | |
2014-01-29 | erts: Test Maps with NIFs | Björn-Egil Dahlberg | |
2014-01-29 | erts: Add NIFs for Maps | Björn-Egil Dahlberg | |
- int enif_is_map(ErlNifEnv* env, ERL_NIF_TERM map) - int enif_get_map_size(ErlNifEnv *env, ERL_NIF_TERM, int*) - ERL_NIF_TERM enif_make_new_map(ErlNifEnv *env) - int enif_make_map_put(ErlNifEnv *env, ERL_NIF_TERM map_in, ERL_NIF_TERM key, ERL_NIF_TERM value, ERL_NIF_TERM* map_out) - int enif_get_map_value(ErlNifEnv *env, ERL_NIF_TERM map, ERL_NIF_TERM key, ERL_NIF_TERM* value) - int enif_find_map_value(ErlNifEnv *env, ERL_NIF_TERM map, ERL_NIF_TERM key, ERL_NIF_TERM* value) - int enif_make_map_update(ErlNifEnv *env, ERL_NIF_TERM map_in, ERL_NIF_TERM key, ERL_NIF_TERM value, ERL_NIF_TERM* map_out) - int enif_make_map_remove(ErlNifEnv *env, ERL_NIF_TERM map_in, ERL_NIF_TERM key, ERL_NIF_TERM* map_out) - int enif_map_iterator_create(ErlNifEnv *env, ERL_NIF_TERM map, ErlNifMapIterator *iter) - void enif_map_iterator_destroy(ErlNifEnv *env, ErlNifMapIterator *iter) - int enif_map_iterator_next(ErlNifEnv *env, ErlNifMapIterator *iter) - int enif_map_iterator_get_pair(ErlNifEnv *env, ErlNifMapIterator *iter, ERL_NIF_TERM *key, ERL_NIF_TERM *value) | |||
2014-01-29 | Merge branch 'bjorn/fna-default/OTP-11612' | Björn Gustavsson | |
* bjorn/fna-default/OTP-11612: Change the default file name encoding mode to +fnaw | |||
2014-01-28 | Update OTP version | Rickard Green | |
2014-01-28 | Update preloaded erlang.beam | Björn-Egil Dahlberg | |
2014-01-28 | preloaded: Remove bogus map type | Björn-Egil Dahlberg | |
2014-01-28 | erts: Add tests for Map update on expressions | Björn-Egil Dahlberg | |
(foo())#{ k1 := V1, k2 => V2 } | |||
2014-01-28 | erts: Add tests for non BIFs in Maps module | Björn-Egil Dahlberg | |
* maps:without/2 * maps:foldl/3 * maps:foldr/3 * maps:map/2 * maps:size/1 | |||
2014-01-28 | erts,stdlib: Change map module name to maps | Björn-Egil Dahlberg | |
Name conforms to EEP. | |||
2014-01-28 | erts: Fix map_SUITE match spec tests | Björn-Egil Dahlberg | |
2014-01-28 | Add tests for pditc, ets and tracing | Lukas Larsson | |
2014-01-28 | erts,stdlib: Teach matchspec compiler map guards | Björn-Egil Dahlberg | |
2014-01-28 | Merge branch 'lukas/erts/sendfile_no_async_pool/OTP-11639' | Lukas Larsson | |
* lukas/erts/sendfile_no_async_pool/OTP-11639: erts/kernel: sendfile no longer uses async threads | |||
2014-01-28 | Change the default file name encoding mode to +fnaw | Björn Gustavsson | |
2014-01-28 | Merge branch 'motiejus/tile_mde3/OTP-11635' | Lukas Larsson | |
* motiejus/tile_mde3/OTP-11635: Undefined MALLOC_USE_HASH macro on TileMDE3 Cross-compilation fix for TileraMDE-3.0.1.125620 | |||
2014-01-28 | erts: Specs for Map BIFs | Björn-Egil Dahlberg | |
2014-01-28 | erts: Remove erlang:size/1 test from map_SUITE | Björn-Egil Dahlberg | |
2014-01-28 | stdlib: Deny variables as keys and disallow ':=' in map construction | Björn-Egil Dahlberg | |
In the current iteration of Maps we should deny *any* variables in Map keys. | |||
2014-01-28 | erts: Update Maps erlang:phash2/1 tests | Björn-Egil Dahlberg | |
2014-01-28 | erts: erlang:phash2 should hash Maps independent of order | Björn-Egil Dahlberg | |
2014-01-28 | erts: Add Map tests for erlang:phash/2 | Björn-Egil Dahlberg | |