WriteAccessRequiredAttribute
Specify which struct method and property requires write access to be invoked.
Read time 4 minutesLast updated 12 days ago
Definition
- Type: Class
- Namespace: Unity.Collections.LowLevel.Unsafe
- Assembly: UnityEngine.CoreModule
- Inherits from: Attribute
[AttributeUsage(AttributeTargets.Method|AttributeTargets.Property)]public class WriteAccessRequiredAttribute : Attribute
Remarks
Used in conjunction with the ReadOnlyAttribute, WriteAccessRequiredAttribute lets you specify which struct method and property requires write access to be invoked. When you add the NativeArray<T>.ReadOnly attribute to a native container, it indicates that only operations that read data can be performed on the native container, and you can't use methods and properties on the native container that modify the array. The attribute indicates which methods and properties can't be used on a native container with the NativeArray<T>.ReadOnly attribute.
WriteAccessRequiredExamples
using Unity.Collections.LowLevel.Unsafe;using Unity.Collections;using UnityEngine;[NativeContainer]public struct MyList<T> where T : struct{ public int Length { get; private set; } [WriteAccessRequired] public void Grow(int capacity) { // ... }}public class MyMonoBehaviour : MonoBehaviour{ [ReadOnly] MyList<int> readOnlyList; MyList<int> writableList = new MyList<int>(); public void OnUpdate() { writableList.Grow(10); // Ok readOnlyList.Grow(10); // Illegal }}