/// <summary> /// Gets or load the reference type of this id. /// </summary> public Task <DalvikReferenceType> GetReferenceTypeAsync() { if (IsNull || (referenceType != null)) { return(referenceType.AsTask()); } return(process.Debugger.ObjectReference.ReferenceTypeAsync(Id).Select(x => process.ReferenceTypeManager[x]).SaveAndReturn(x => referenceType = x)); }
/// <summary> /// Gets the superclass of this type. /// </summary> /// <returns>Null if this type is java/lang/Object.</returns> public Task <DalvikReferenceType> GetSuperClassAsync() { if (superClass != null) { return(superClass.AsTask()); } return(Debugger.ClassType.SuperclassAsync(Id).Select(x => x.IsNull ? null : Manager[x]).SaveAndReturn(x => superClass = x)); }