private static void Write(UnsafeWriter writer, UnityEventsDataElement value)
        {
            writer.Write(value.UnityEvents.Count);
            foreach (var v in value.UnityEvents)
            {
                v.WriteTo(writer);
            }

            value.ImportedUnityEventData.WriteTo(writer);
        }
        private static object Read(UnsafeReader reader)
        {
            var count   = reader.ReadInt32();
            var methods = new List <UnityEventData>(count);

            for (int i = 0; i < count; i++)
            {
                methods.Add(UnityEventData.ReadFrom(reader));
            }

            var result = new UnityEventsDataElement(methods, ImportedUnityEventData.ReadFrom(reader));

            return(result);
        }
Exemple #3
0
        private void DropPrefabModifications(IPsiSourceFile sourceFile, UnityEventsDataElement element)
        {
            foreach (var(unityEvent, _) in element.ImportedUnityEventData.UnityEventToModifiedIndex)
            {
                myUnityEventsWithModifications.Remove(unityEvent.EventName);
                myUnityEventNameToSourceFiles.Remove(unityEvent.EventName, sourceFile);
            }

            foreach (var assetMethodNameInModification in element.ImportedUnityEventData.AssetMethodNameInModifications)
            {
                myMethodNameToFilesWithPossibleUsages.Remove(assetMethodNameInModification, sourceFile);
            }

            if (element.ImportedUnityEventData.HasEventModificationWithoutMethodName)
            {
                myFilesToCheckForUsages.Remove(sourceFile);
            }

            myImportedUnityEventDatas.Remove(sourceFile);
        }