JMap<K, V>.fromPointer constructor
Implementation
JMap.fromPointer(Pointer<Void> ptr, {String clsName = _jMapCls})
: super.fromPointer(ptr, clsName) {
Set keySet = JSet<K>.fromPointer(
(callMethodSync('keySet', 'Ljava/util/Set;') as JObject).pointer)
.raw;
Map temp = {};
String itemType = '';
for (var key in keySet) {
dynamic item = callMethodSync('get', 'Ljava/lang/Object;',
args: [boxingWrapperClass(key)],
assignedSignature: ['Ljava/lang/Object;']);
final valueConvertor = getRegisterPointerConvertor(V.toString());
if (valueConvertor != null) {
temp[key] = valueConvertor((item as JObject).pointer);
continue;
}
if (item is String) {
temp[key] = unBoxingWrapperClass(item, 'java/lang/String');
continue;
}
if (itemType == '') {
itemType = (item as JObject).className!;
}
temp[key] = unBoxingWrapperClass((item as JObject).pointer, itemType);
}
raw = temp;
}