Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
XmlElementListListener.cs
Go to the documentation of this file.
1namespace System.Xml;
2
3internal sealed class XmlElementListListener
4{
6
7 private readonly XmlDocument _doc;
8
9 private readonly XmlNodeChangedEventHandler _nodeChangeHandler;
10
19
20 private void OnListChanged(object sender, XmlNodeChangedEventArgs args)
21 {
22 lock (this)
23 {
24 if (_elemList != null)
25 {
26 if (_elemList.TryGetTarget(out var target))
27 {
28 target.ConcurrencyCheck(args);
29 return;
30 }
33 _elemList = null;
34 }
35 }
36 }
37
38 internal void Unregister()
39 {
40 lock (this)
41 {
42 if (_elemList != null)
43 {
46 _elemList = null;
47 }
48 }
49 }
50}
WeakReference< XmlElementList > _elemList
void OnListChanged(object sender, XmlNodeChangedEventArgs args)
XmlElementListListener(XmlDocument doc, XmlElementList elemList)
readonly XmlNodeChangedEventHandler _nodeChangeHandler