Why bug ? This type contains GetAll :(
public abstract class PrefabAttribute : MonoBehaviour, IPrefabPreProcess
{
[NonSerialized]
public Vector3 worldPosition;
[NonSerialized]
public Quaternion worldRotation;
[NonSerialized]
public Vector3 worldForward;
[NonSerialized]
public Vector3 localPosition;
[NonSerialized]
public Vector3 localScale;
[NonSerialized]
public Quaternion localRotation;
[NonSerialized]
public string fullName;
[NonSerialized]
public string hierachyName;
[NonSerialized]
public uint prefabID;
[NonSerialized]
public int instanceID;
[NonSerialized]
public PrefabAttribute.Library prefabAttribute;
[NonSerialized]
public GameManager gameManager;
[NonSerialized]
public bool isServer;
public static PrefabAttribute.Library server;
protected PrefabAttribute();
public bool isClient { get; }
public virtual void PreProcess(IPrefabProcessor preProcess, GameObject rootObj, string name, bool serverside, bool clientside, bool bundling);
protected virtual void AttributeSetup(GameObject rootObj, string name, bool serverside, bool clientside, bool bundling);
protected abstract System.Type GetIndexedType();
public static bool operator ==(PrefabAttribute x, PrefabAttribute y);
public static bool operator !=(PrefabAttribute x, PrefabAttribute y);
public override bool Equals(object o);
public override int GetHashCode();
public static implicit operator bool(PrefabAttribute exists);
public override string ToString();
public class AttributeCollection
{
public T[] Find<T>();
public void Add(PrefabAttribute attribute);
}
public class Library
{
public PrefabAttribute.AttributeCollection Find(uint prefabID);
public T Find<T>(uint prefabID) where T : PrefabAttribute;
public T[] FindAll<T>(uint prefabID) where T : PrefabAttribute;
public T[] GetAll<T>() where T : PrefabAttribute;
public void Add(uint prefabID, PrefabAttribute attribute);
}
}