23 using System.Collections.Generic;
30 namespace Ntp.Analyzer.Config.Syntax
48 var dropdown = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordDropdown) as StringSettingNode;
95 linkable = table.
Lookup(pageName.Value);
101 CheckIsUnique(
new List<Symbol>
111 if (Nodes.Count(n => n.Symbol ==
Symbol.KeywordDropdown) > 0)
115 else if (Nodes.Count(n => n.Symbol ==
Symbol.KeywordPage) > 0)
119 else if (Nodes.Count(n => n.Symbol ==
Symbol.KeywordLink) > 0)
125 CheckAllIsPresent(
new List<Symbol> {
Symbol.KeywordType});
132 if (pageName != null)
135 var reference = table.
Lookup(pageName.Value);
136 if (reference == null)
138 AddReferenceNameError(pageName, keyword, pageName.Value);
142 var link = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordLink) as StringSettingNode;
147 location = CheckLink(link.Value, linkKeyword);
152 CheckTypeIs<StringSettingNode>(
Symbol.KeywordPage);
153 CheckTypeIs<StringSettingNode>(
Symbol.KeywordCaption);
154 CheckTypeIs<StringSettingNode>(
Symbol.KeywordLink);
155 CheckTypeIs<StringSettingNode>(
Symbol.KeywordDropdown);
156 CheckTypeIs<MenuItemTypeNode>(
Symbol.KeywordType);
static Keyword Find(Symbol symbol)
ConfigurationNode CompiledNode
ISyntaxNode Lookup(string name)