API/Autodoc/Files
Namespaces
| Name |
|---|
Classes
| Name | |
|---|---|
| class | RuStore::UnityInstallReferrer::Model::BaseFields |
Source code
using RuStore.UnityInstallReferrer.Internal;
using System;
using System.Linq;
using System.Reflection;
namespace RuStore.UnityInstallReferrer.Model {
public abstract class BaseFields {
private FieldInfo[] GetFields(object obj) =>
obj.GetType().GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
private FieldInfo[] GetFields() => GetFields(this);
public override bool Equals(object obj) {
if (obj == null || GetType() != obj.GetType()) return false;
var fields = GetFields();
var otherFields = GetFields(obj);
for (int i = 0; i < fields.Length; i++) {
var thisValue = fields[i].GetValue(this);
var otherValue = otherFields[i].GetValue(obj);
if (!Equals(thisValue, otherValue)) return false;
}
return true;
}
public override int GetHashCode() {
var fields = GetFields();
var values = fields.Select(field => field.GetValue(this)).ToArray();
return HashCode.Combine(values);
}
public override string ToString() {
var fields = GetFields();
var values = fields.Select(field => $"{field.Name}={field.GetValue(this)}").ToArray();
return $"{GetType().Name}('{string.Join(", ", values)}')";
}
}
}
- Страницы
- BaseFields.cs.en
- BaseFields.cs
- BaseJsonSerializer.cs.en
- BaseJsonSerializer.cs
- BaseValue.cs.en
- BaseValue.cs
- Callbacks.en
- Callbacks
- Data.en
- Data
- DataConverter.cs.en
- DataConverter.cs
- FsaEvent.cs.en
- FsaEvent.cs
- FsaEventType.cs.en
- FsaEventType.cs
- GetInstallReferrer.cs.en
- GetInstallReferrer.cs
- GetInstallReferrerListener.cs.en
- GetInstallReferrerListener.cs
- IJsonSerializer.cs.en
- IJsonSerializer.cs
- Init.cs.en
- Init.cs
- InstallReferrerClient_Instance.cs.en
- InstallReferrerClient_Instance.cs
- Internal.en
- Internal
- JsonSerializerProvider.cs.en
- JsonSerializerProvider.cs
- Model.en
- Model
- PhoneNumber.cs.en
- PhoneNumber.cs
- RuStoreInstallReferrer.cs.en
- RuStoreInstallReferrer.cs
- RuStoreInstallReferrerClient.cs.en
- RuStoreInstallReferrerClient.cs
- Runtime.en
- Runtime
- SendFsaEvent.cs.en
- SendFsaEvent.cs
- SendFsaEventListener.cs.en
- SendFsaEventListener.cs
- docs.en
- docs
- examples.en
- examples
- ru.rustore.installreferrer.en
- ru.rustore.installreferrer
- BaseFields.cs.en
- BaseFields.cs
- BaseJsonSerializer.cs.en
- BaseJsonSerializer.cs
- BaseValue.cs.en
- BaseValue.cs
- Callbacks.en
- Callbacks
- Data.en
- Data
- DataConverter.cs.en
- DataConverter.cs
- FsaEvent.cs.en
- FsaEvent.cs
- FsaEventType.cs.en
- FsaEventType.cs
- GetInstallReferrer.cs.en
- GetInstallReferrer.cs
- GetInstallReferrerListener.cs.en
- GetInstallReferrerListener.cs
- IJsonSerializer.cs.en
- IJsonSerializer.cs
- Init.cs.en
- Init.cs
- InstallReferrerClient_Instance.cs.en
- InstallReferrerClient_Instance.cs
- Internal.en
- Internal
- JsonSerializerProvider.cs.en
- JsonSerializerProvider.cs
- Model.en
- Model
- PhoneNumber.cs.en
- PhoneNumber.cs
- RuStoreInstallReferrer.cs.en
- RuStoreInstallReferrer.cs
- RuStoreInstallReferrerClient.cs.en
- RuStoreInstallReferrerClient.cs
- Runtime.en
- Runtime
- SendFsaEvent.cs.en
- SendFsaEvent.cs
- SendFsaEventListener.cs.en
- SendFsaEventListener.cs
- docs.en
- docs
- examples.en
- examples
- ru.rustore.installreferrer.en
- ru.rustore.installreferrer