4 writes to _firstTarget
System.Threading.Tasks.Dataflow (4)
Internal\TargetRegistry.cs (4)
182_firstTarget = _lastTarget = null; 219_firstTarget = _lastTarget = node; 239_firstTarget = node; 270if (_firstTarget == node) _firstTarget = next;
12 references to _firstTarget
System.Threading.Tasks.Dataflow (12)
Internal\TargetRegistry.cs (12)
179LinkedTargetInfo? firstTarget = _firstTarget; 207internal LinkedTargetInfo? FirstTargetNode { get { return _firstTarget; } } 217if (_firstTarget == null && _lastTarget == null) 223Debug.Assert(_firstTarget != null && _lastTarget != null, "Both first and last node must either be null or non-null."); 225Debug.Assert(_firstTarget.Previous == null, "The first node must not have a predecessor."); 237node.Next = _firstTarget; 238_firstTarget.Previous = node; 243Debug.Assert(_firstTarget != null && _lastTarget != null, "Both first and last node must be non-null after AddToList."); 251Debug.Assert(_firstTarget != null && _lastTarget != null, "Both first and last node must be non-null before RemoveFromList."); 270if (_firstTarget == node) _firstTarget = next; 273Debug.Assert((_firstTarget != null) == (_lastTarget != null), "Both first and last node must either be null or non-null after RemoveFromList."); 286for (LinkedTargetInfo? node = _firstTarget; node != null; node = node.Next)