using System; namespace Misaki.GraphView { public static class SlotExtension { /// /// Unlink all slots from this slot. /// public static void UnlinkAll(this Slot slot) { var slotCount = slot.LinkedSlotData.Count; for (var i = 0; i < slotCount; i++) { var other = slot.LinkedSlotData[i]; var otherSlot = slot.owner.GraphObject.GetNode(other.nodeID).GetSlot(other.slotIndex, other.direction); otherSlot.owner.GetSlot(other.slotIndex, other.direction)?.Unlink(slot); } } /// /// Get the value type of the slot data. /// /// The type of the slot value public static Type GetValueType(this SlotData slotData) { return Type.GetType(slotData.valueType); } } }