MapValue по умолчанию сохраняет порядок элементов

This commit is contained in:
Victor 2019-07-04 22:09:21 +03:00
parent d8fde244b0
commit 2e439d73b5

View File

@ -1,8 +1,8 @@
package com.annimon.ownlang.lib; package com.annimon.ownlang.lib;
import com.annimon.ownlang.exceptions.TypeException; import com.annimon.ownlang.exceptions.TypeException;
import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
import java.util.function.Consumer; import java.util.function.Consumer;
@ -25,7 +25,7 @@ public class MapValue implements Value, Iterable<Map.Entry<Value, Value>> {
private final Map<Value, Value> map; private final Map<Value, Value> map;
public MapValue(int size) { public MapValue(int size) {
this.map = new HashMap<>(size); this.map = new LinkedHashMap<>(size);
} }
public MapValue(Map<Value, Value> map) { public MapValue(Map<Value, Value> map) {
@ -85,6 +85,10 @@ public class MapValue implements Value, Iterable<Map.Entry<Value, Value>> {
map.put(key, value); map.put(key, value);
} }
public Map<Value, Value> getMap() {
return map;
}
@Override @Override
public Object raw() { public Object raw() {
return map; return map;