コード例 #1
0
        private object Eval(string arg)
        {
            List <string> fields;

            if (ReferenceEquals(arg, lastArg))
            {
                fields = lastFields;
            }
            else
            {
                if (!cacheField.TryGetValue(arg, out fields))
                {
                    fields          = arg.Split('.').ToList();
                    cacheField[arg] = fields;
                }
                lastFields = fields;
                lastArg    = arg;
            }
            return(ClrDump.GetFieldValueImpl(Address, ClrType, fields));
        }