// Token: 0x06005A4D RID: 23117 RVA: 0x0013BB10 File Offset: 0x00139D10 private static Type ResolveTypeRelativeToBaseTypes(string typeName, int offset, int count, Type serverType) { if (typeName == null || serverType == null) { return(null); } string fullName = serverType.FullName; if (fullName.Length == count && string.CompareOrdinal(typeName, offset, fullName, 0, count) == 0) { return(serverType); } return(MethodCall.ResolveTypeRelativeToBaseTypes(typeName, offset, count, serverType.BaseType)); }
private static Type ResolveTypeRelativeTo(string typeName, int offset, int count, Type serverType) { Type baseTypes = MethodCall.ResolveTypeRelativeToBaseTypes(typeName, offset, count, serverType); if (baseTypes == (Type)null) { foreach (Type @interface in serverType.GetInterfaces()) { string fullName = @interface.FullName; if (fullName.Length == count && string.CompareOrdinal(typeName, offset, fullName, 0, count) == 0) { return(@interface); } } } return(baseTypes); }
// Token: 0x06005A4C RID: 23116 RVA: 0x0013BAB0 File Offset: 0x00139CB0 private static Type ResolveTypeRelativeTo(string typeName, int offset, int count, Type serverType) { Type type = MethodCall.ResolveTypeRelativeToBaseTypes(typeName, offset, count, serverType); if (type == null) { Type[] interfaces = serverType.GetInterfaces(); foreach (Type type2 in interfaces) { string fullName = type2.FullName; if (fullName.Length == count && string.CompareOrdinal(typeName, offset, fullName, 0, count) == 0) { return(type2); } } } return(type); }