소스 검색

Fix map_zip to fill with either key numbers or null values

pull/13/head
mtardy 4 년 전
부모
커밋
37a048a8e7
1개의 변경된 파일6개의 추가작업 그리고 3개의 파일을 삭제
  1. +6
    -3
      parse.leg

+ 6
- 3
parse.leg 파일 보기

@ -851,14 +851,17 @@ SQUOTE = "'"
%%
;
oop map_zip(oop keys, oop values)
{
assert(is(Map, keys));
assert(is(Map, values));
oop map= makeMap();
for (int i= 0; map_hasIntegerKey(keys, i) && map_hasIntegerKey(values, i); ++i) {
oop key = get(keys, Map, elements)[i].value;
oop value = get(values, Map, elements)[i].value;
size_t sk= map_size(keys), sv= map_size(values);
if (sk < sv) sk= sv;
for (size_t i= 0; i < sk; ++i) {
oop key = i < sk && map_hasIntegerKey(keys, i) ? get(keys, Map, elements)[i].value : makeInteger(i);
oop value = i < sv && map_hasIntegerKey(values, i) ? get(values, Map, elements)[i].value : null;
map_set(map, key, value);
}
return map;

불러오는 중...
취소
저장