decode<K, V> static method
Map<K, Record<V> >
decode<K, V>(
- String json,
- Hlc canonicalTime, {
- KeyDecoder<
K> ? keyDecoder, - ValueDecoder<
V> ? valueDecoder, - NodeIdDecoder? nodeIdDecoder,
Implementation
static Map<K, Record<V>> decode<K, V>(String json, Hlc canonicalTime,
{KeyDecoder<K>? keyDecoder,
ValueDecoder<V>? valueDecoder,
NodeIdDecoder? nodeIdDecoder}) {
final now = Hlc.now(canonicalTime.nodeId);
final modified = canonicalTime >= now ? canonicalTime : now;
return (jsonDecode(json) as Map<String, dynamic>).map(
(key, value) => MapEntry(
keyDecoder == null ? key as K : keyDecoder(key),
Record.fromJson(
key,
value,
modified,
valueDecoder: valueDecoder,
nodeIdDecoder: nodeIdDecoder,
),
),
);
}