jsonAt function
Gets obj
sub-property value located by RFC 6901 JSON pointer
.
If type of obj
is string it will be parsed to JSON object used for search.
Returns Optional
value holder.
Implementation
Optional<dynamic> jsonAt(dynamic obj, String pointer) {
if (obj is String) {
obj = convert_lib.jsonDecode(obj as String);
}
if (pointer.isEmpty) {
return Optional<dynamic>.of(obj);
}
if (obj is Map || obj is List) {
return _traverse(obj, _pointer(pointer));
} else {
return const Optional<dynamic>.absent();
}
}