public void Extract() { _data.EditorContent = _contentProperty.stringValue; _data.EditorReferences.Clear(); if (!string.IsNullOrEmpty(_data.EditorContent)) { for (var i = 0; i < _referencesProperty.arraySize; i++) { var reference = _referencesProperty.GetArrayElementAtIndex(i).objectReferenceValue; _data.EditorReferences.Add(reference); } using (var reader = new SerializedDataReader(_data)) Load(reader, ref _value); } Update(_value); }
protected abstract void Load(SerializedDataReader reader, ref T value);