diff --git a/src/AddIns/Debugger/Debugger.AddIn/TreeModel/ExpressionNode.cs b/src/AddIns/Debugger/Debugger.AddIn/TreeModel/ExpressionNode.cs index b3aa227bb9..b98e3edd52 100644 --- a/src/AddIns/Debugger/Debugger.AddIn/TreeModel/ExpressionNode.cs +++ b/src/AddIns/Debugger/Debugger.AddIn/TreeModel/ExpressionNode.cs @@ -78,62 +78,10 @@ namespace Debugger.AddIn.TreeModel get { if (!evaluated) EvaluateExpression(); - return GetFullName() ?? Name.Trim(); + return this.expression.PrettyPrint() ?? Name.Trim(); } } - private string GetFullName() - { - // TODO : do this better - if (expression is MemberReferenceExpression) { - var memberExpression = (MemberReferenceExpression)expression; - - Expression currentExpression = memberExpression; - Stack stack = new Stack(); - while (currentExpression is MemberReferenceExpression) - { - var exp = (MemberReferenceExpression)currentExpression; - stack.Push(exp.MemberName); - stack.Push("."); - - currentExpression = exp.TargetObject; - } - - if (currentExpression is CastExpression) { - var castExpression = (CastExpression)currentExpression; - currentExpression = castExpression.Expression; - - while (currentExpression is MemberReferenceExpression) - { - var exp = (MemberReferenceExpression)currentExpression; - stack.Push(exp.MemberName); - stack.Push("."); - - currentExpression = exp.TargetObject; - } - } - - if (currentExpression is IdentifierExpression) { - var identifierExpression = (IdentifierExpression)currentExpression; - stack.Push(identifierExpression.Identifier); - } - - if (currentExpression is ThisReferenceExpression) { - stack.Push("this"); - } - - // create fullname - StringBuilder sb = new StringBuilder(); - while(stack.Count > 0) - sb.Append(stack.Pop()); - - fullName = sb.ToString(); - return fullName; - } - - return null; - } - public override string Type { get { if (!evaluated) EvaluateExpression();