コード例 #1
0
        /// <summary>
        /// Create all child properties
        /// </summary>
        protected override void LoadChildren()
        {
            var fieldValues = superClass.GetInstanceFieldValuesAsync(objectReference).Await(DalvikProcess.VmTimeout);

            Children.AddRange(fieldValues.Select(x => new DebugValueProperty(x)));

            // Get base class
            if (superClass.GetNameAsync().Await(DalvikProcess.VmTimeout) != "java.lang.Object")
            {
                var superSuperClass = superClass.GetSuperClassAsync().Await(DalvikProcess.VmTimeout);
                if (superSuperClass != null)
                {
                    Children.Insert(0, new DebugBaseClassProperty(objectReference, superSuperClass));
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// Create all child properties
        /// </summary>
        protected override List <DebugProperty> CreateChildren()
        {
            var fieldValues = superClass.GetInstanceFieldValuesAsync(objectReference).Await(DalvikProcess.VmTimeout);
            var list        = fieldValues.Select(x => new DebugValueProperty(x, this)).Cast <DebugProperty>().ToList();

            // Get base class
            if (superClass.GetNameAsync().Await(DalvikProcess.VmTimeout) != "java.lang.Object")
            {
                var superSuperClass = superClass.GetSuperClassAsync().Await(DalvikProcess.VmTimeout);
                if (superSuperClass != null)
                {
                    list.Insert(0, new DebugBaseClassProperty(objectReference, superSuperClass, this));
                }
            }
            return(list);
        }
コード例 #3
0
        /// <summary>
        /// Create all child properties
        /// </summary>
        protected override List <DebugProperty> CreateChildren()
        {
            var fieldValues = superClass.GetInstanceFieldValuesAsync(objectReference).Await(DalvikProcess.VmTimeout);
            var list        = fieldValues.Select(x => new DebugValueProperty(x, this)).Cast <DebugProperty>().ToList();

            // Get base class
            var superclassName = superClass.GetNameAsync().Await(DalvikProcess.VmTimeout);

            if (!superclassName.Equals("java.lang.Object", StringComparison.InvariantCultureIgnoreCase) &&
                !superclassName.Equals("System.Object", StringComparison.InvariantCultureIgnoreCase))
            {
                var superSuperClass = superClass.GetSuperClassAsync().Await(DalvikProcess.VmTimeout);
                if (superSuperClass != null)
                {
                    list.Insert(0, new DebugBaseClassProperty(objectReference, superSuperClass, this));
                }
            }
            return(list);
        }