BmapCoreFluttifyIOSAs<T> function

  1. @optionalTypeArgs
T? BmapCoreFluttifyIOSAs<T>(
  1. dynamic __this__
)

Implementation

@optionalTypeArgs
T? BmapCoreFluttifyIOSAs<T>(dynamic __this__) {
  final typeName = T.toString();

  if (__this__ == null) {
    return null;
  } else if (RegExp(r'^(List<)?(String|int|double)(>)?|(Map<String,(String|int|double)>)$').hasMatch(typeName)) {
    return __this__ as T;
  }
  else if (T == BMKUserLocation) {
    return (BMKUserLocation()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKBaseLog) {
    return (BMKBaseLog()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKCoordinateSpan) {
    return (BMKCoordinateSpan()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKCoordinateBounds) {
    return (BMKCoordinateBounds()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKCoordinateRegion) {
    return (BMKCoordinateRegion()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKGeoPoint) {
    return (BMKGeoPoint()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKMapPoint) {
    return (BMKMapPoint()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKMapSize) {
    return (BMKMapSize()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKMapRect) {
    return (BMKMapRect()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKPlanNode) {
    return (BMKPlanNode()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKIndoorPlanNode) {
    return (BMKIndoorPlanNode()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKAddressComponent) {
    return (BMKAddressComponent()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKBuildInfo) {
    return (BMKBuildInfo()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKMapManager) {
    return (BMKMapManager()..refId = (__this__ as Ref).refId) as T;
  } else if (T == BMKGeneralDelegate) {
    return (BMKGeneralDelegate.subInstance()..refId = (__this__ as Ref).refId) as T;
  }

  final FoundationFluttifyObject = FoundationFluttifyIOSAs<T>(__this__);
  if (FoundationFluttifyObject != null) {
    return FoundationFluttifyObject;
  }
  final CoreLocationFluttifyObject = CoreLocationFluttifyIOSAs<T>(__this__);
  if (CoreLocationFluttifyObject != null) {
    return CoreLocationFluttifyObject;
  }

  // 匹配不到目标类型, 直接返回原对象
  debugPrint('匹配不到目标类型, 直接返回原对象');
  return __this__;
}