3 interfaces inheriting from INode
Microsoft.Maui.Controls.SourceGen (3)
src\Controls\src\Xaml\XamlNode.cs (3)
21
interface IValueNode :
INode
25
interface IElementNode :
INode
, IListNode
34
interface IListNode :
INode
1 implementation of INode
Microsoft.Maui.Controls.SourceGen (1)
src\Controls\src\Xaml\XamlNode.cs (1)
88
abstract class BaseNode : IXmlLineInfo,
INode
55 references to INode
Microsoft.Maui.Controls.SourceGen (55)
src\Controls\src\Xaml\XamlNode.cs (37)
15
INode
Parent { get; set; }
17
void Accept(IXamlNodeVisitor visitor,
INode
parentNode);
18
INode
Clone();
27
Dictionary<XmlName,
INode
> Properties { get; }
36
List<
INode
> CollectionItems { get; }
98
public
INode
Parent { get; set; }
105
public abstract void Accept(IXamlNodeVisitor visitor,
INode
parentNode);
106
public abstract
INode
Clone();
120
public override void Accept(IXamlNodeVisitor visitor,
INode
parentNode)
125
public override
INode
Clone() => new ValueNode(Value, NamespaceResolver, LineNumber, LinePosition)
142
public override void Accept(IXamlNodeVisitor visitor,
INode
parentNode)
147
public override
INode
Clone() => new MarkupNode(MarkupString, NamespaceResolver, LineNumber, LinePosition)
161
Properties = new Dictionary<XmlName,
INode
>();
163
CollectionItems = new List<
INode
>();
168
public Dictionary<XmlName,
INode
> Properties { get; }
170
public List<
INode
> CollectionItems { get; }
175
public override void Accept(IXamlNodeVisitor visitor,
INode
parentNode)
182
foreach (
var
node in Properties.Values.ToArray())
184
foreach (
var
node in CollectionItems.ToArray())
193
bool IsDataTemplate(
INode
parentNode)
196
parentElement.Properties.TryGetValue(XmlName._CreateContent, out
INode
createContent) &&
202
protected bool SkipChildren(IXamlNodeVisitor visitor,
INode
node,
INode
parentNode) =>
207
protected bool SkipVisitNode(IXamlNodeVisitor visitor,
INode
parentNode) =>
210
public override
INode
Clone()
220
foreach (
var
p in CollectionItems)
232
public override void Accept(IXamlNodeVisitor visitor,
INode
parentNode)
239
foreach (
var
node in Properties.Values.ToList())
241
foreach (
var
node in CollectionItems.ToList())
252
public ListNode(IList<
INode
> nodes, IXmlNamespaceResolver namespaceResolver, int linenumber = -1, int lineposition = -1)
259
public List<
INode
> CollectionItems { get; set; }
261
public override void Accept(IXamlNodeVisitor visitor,
INode
parentNode)
265
foreach (
var
node in CollectionItems)
271
public override
INode
Clone()
273
var items = new List<
INode
>();
274
foreach (
var
p in CollectionItems)
285
public static bool SkipPrefix(this
INode
node, string prefix)
src\Controls\src\Xaml\XamlNodeVisitor.cs (18)
13
void Visit(ValueNode node,
INode
parentNode);
14
void Visit(MarkupNode node,
INode
parentNode);
15
void Visit(ElementNode node,
INode
parentNode);
16
void Visit(RootNode node,
INode
parentNode);
17
void Visit(ListNode node,
INode
parentNode);
18
bool SkipChildren(
INode
node,
INode
parentNode);
30
readonly Action<
INode
,
INode
> action;
32
public XamlNodeVisitor(Action<
INode
,
INode
> action, TreeVisitingMode visitingMode = TreeVisitingMode.TopDown, bool stopOnDataTemplate = false, bool visitNodeOnDataTemplate = true)
45
public void Visit(ValueNode node,
INode
parentNode) => action(node, parentNode);
46
public void Visit(MarkupNode node,
INode
parentNode) => action(node, parentNode);
47
public void Visit(ElementNode node,
INode
parentNode) => action(node, parentNode);
48
public void Visit(RootNode node,
INode
parentNode) => action(node, parentNode);
49
public void Visit(ListNode node,
INode
parentNode) => action(node, parentNode);
50
public bool SkipChildren(
INode
node,
INode
parentNode) => false;