Описание
Когда отмечен тип, все его члены с [RequiredMember] будут отмечены.
using System;
using UnityEngine;
using UnityEngine.Scripting;
public class NewBehaviourScript : MonoBehaviour
{
void Start()
{
new UsedFoo();
}
}
class UsedFoo
{
// Переживет удаление управляемого кода, потому что используется UsedFoo
[RequiredMember]
public int Field;
// Переживет удаление управляемого кода, потому что используется UsedFoo
[RequiredMember]
public void Method()
{
}
// Свойство, метод получения свойства и метод установки свойства переживут удаление управляемого кода, поскольку используется UsedFoo
[RequiredMember]
public int Property1 { get; set; }
// Свойство и метод получения свойства переживут удаление управляемого кода, поскольку используется UsedFoo
public int Property2 { [RequiredMember] get; set; }
// Свойство и метод установки свойств переживут удаление управляемого кода, поскольку используется UsedFoo
public int Property3 { get; [RequiredMember] set; }
// Событие, метод добавления и метод удаления переживут удаление управляемого кода, поскольку используется UsedFoo
[RequiredMember]
public event EventHandlerEvent;
}
class UnusedFoo
{
// Не переживет зачистку, потому что UnusedFoo не используется
[RequiredMember]
public int Field;
// Не переживет зачистку, потому что UnusedFoo не используется
[RequiredMember]
public void Method()
{
}
// Не переживет зачистку, потому что UnusedFoo не используется
[RequiredMember]
public int Property { get; set; }
// Не переживет зачистку, потому что UnusedFoo не используется
[RequiredMember]
public event EventHandlerEvent;
}