TargetClassObject CheckTypeProxy(TargetStructObject obj)
{
if (obj.Type.DebuggerTypeProxyAttribute == null)
return null;
string proxy_name = obj.Type.DebuggerTypeProxyAttribute.ProxyTypeName;
string original_name = proxy_name;
proxy_name = proxy_name.Replace ('+', '/');
Expression expression;
try {
expression = new TypeProxyExpression (proxy_name, obj);
expression = expression.Resolve (this);
if (expression == null)
return null;
return (TargetClassObject) expression.EvaluateObject (this);
} catch {
return null;
}
}