hasProxy method
检查指定字段的代理是否存在,逻辑与getProxy一样,只是用false代替异常的抛出,用于 xxx?.xxx 的调用
Implementation
bool hasProxy(String propertyName, {required bool setter}) {
if (setter) {
final setterPropName = '$propertyName=';
final proxy = isExternal ? (externalProxyMap?[setterPropName] ?? externalProxyMap?[propertyName]) : (internalProxyMap?[setterPropName] ?? internalProxyMap?[propertyName]);
if (proxy != null) return true;
if (_internalSuperclass != null) return _internalSuperclass!.hasProxy(propertyName, setter: setter);
return false;
} else {
final proxy = isExternal ? (externalProxyMap?[propertyName]) : (internalProxyMap?[propertyName]);
if (proxy != null) return true;
if (_internalSuperclass != null) return _internalSuperclass!.hasProxy(propertyName, setter: setter);
return false;
}
}