public NodeContestParser(INodeParser createdParser, INodeParser updatedParser, INodeParser costParser, INodeParser customerParser, INodeParser descParser, INodeParser idParser) { mCreatedParser = createdParser; mCostParser = costParser; mCustomerParser = customerParser; mUpdatedParser = updatedParser; mDescParser = descParser; mIdParser = idParser; }
private void ParserPass(int i) { var prop = stringBuilder.ToString(); for (int p = 0; p < NodeParsers.Count; p++) { INodeParser parser = NodeParsers[p]; IList <INodeData> nodes = null; int position = i - prop.Length; string patched; if (parser.IsValid(prop, out nodes, position, out patched)) { stringBuilder = new StringBuilder(patched); for (int n = 0; n < nodes.Count; n++) { NodeDatas.Add(nodes[n]); for (int i1 = 0; i1 < nodes[n].SubNodes.Count; i1++) { INodeData sub = nodes[n].SubNodes[i1]; if (!NodeUtils.IsTerminal(sub.Type)) { IList <INodeData> subnodes; var mainParser = new MainParser(); mainParser.ExtractNodeData(sub.Data, out subnodes); sub.SubNodes.AddRange(subnodes); } } } // rest of the node if (patched.Length != 0) { var patchedParser = new MainParser(); IList <INodeData> restOfNodes = null; patchedParser.ExtractNodeData(patched, out restOfNodes); for (int i1 = 0; i1 < restOfNodes.Count; i1++) { INodeData n = restOfNodes[i1]; NodeDatas.Add(n); } } return; } } }
public PCParserTests(string filename) { _filename = Utils.GetFullPathToFile(filename); _parsers = new List <INodeParser>(); var interfaceType = typeof(INodeParser); var types = AppDomain.CurrentDomain.GetAssemblies().SelectMany(s => s.GetTypes()).Where(p => interfaceType.IsAssignableFrom(p) && p.IsClass && p != typeof(DefaultParser)); foreach (var type in types) { INodeParser instance = (INodeParser)Activator.CreateInstance(type); _parsers.Add(instance); } }
/// <exception cref="ArgumentNullException"> /// <paramref name="nodeSelector"/> or /// <paramref name="nodeParser"/> is <see langword="null" />.</exception> public PluralsightCatalogParser(INodeSelector nodeSelector, INodeParser nodeParser) { if (nodeSelector == null) { throw new ArgumentNullException("nodeSelector"); } if (nodeParser == null) { throw new ArgumentNullException("nodeParser"); } _nodeSelector = nodeSelector; _nodeParser = nodeParser; }
/// <summary> /// Initializes a new instance of the <see cref="UiService"/> class. /// </summary> /// <param name="screenDumper">The screen dumper.</param> /// <param name="nodeParser">The node parser.</param> /// <param name="nodeFinder">The node finder.</param> public UiService(IScreenDumper screenDumper, INodeParser nodeParser, INodeFinder nodeFinder) { if (screenDumper == null) { throw new ArgumentNullException(nameof(screenDumper)); } if (nodeParser == null) { throw new ArgumentNullException(nameof(nodeParser)); } if (nodeFinder == null) { throw new ArgumentNullException(nameof(nodeFinder)); } _screenDumper = screenDumper; _nodeParser = nodeParser; _nodeFinder = nodeFinder; Extensions = new List <IUiExtension>(); }
public PersonNodeParser( IElementParser elementParser, IPersonTextNodeParser personTextNodeParser, ISpeechNodeParser speechNodeParser, IThoughtNodeParser thoughtNodeParser, IMoodNodeParser moodNodeParser, IPauseNodeParser pauseNodeParser, ISetNodeParser setNodeParser, IUnsetNodeParser unsetNodeParser ) { this.elementParser = elementParser; this.childParser = personTextNodeParser; Settings = ElementParserSettings.AggregatedNonRepeat(childParser); AggregationSettings = ElementParserSettings.Aggregated( speechNodeParser, thoughtNodeParser, moodNodeParser, pauseNodeParser, setNodeParser, unsetNodeParser ); }
private static IElementParserSettings FakeSettings(params object[] parsers) { var settings = A.Dummy <IElementParserSettings>(); var foundTextParser = false; foreach (var parser in parsers) { if (parser is INodeParser nodeParser) { INodeParser ignoredParser = null; A.CallTo(() => settings.ChildParsers.TryGet(nodeParser.Name, out ignoredParser)) .Returns(true) .AssignsOutAndRefParameters(nodeParser); } else if (parser is IAttributeParser attributeParser) { IAttributeParser ignoredParser = null; A.CallTo(() => settings.AttributeParsers.TryGet(attributeParser.Name, out ignoredParser)) .Returns(true) .AssignsOutAndRefParameters(attributeParser); } else if (parser is ITextParser textParser) { A.CallTo(() => settings.TextParser).Returns(textParser); foundTextParser = true; } } if (!foundTextParser) { A.CallTo(() => settings.TextParser).Returns(null); } return(settings); }
public SaveFile(ParserList parsers) { _parsers = new List <INodeParser>(); switch (parsers) { case ParserList.All: var interfaceType = typeof(INodeParser); var types = AppDomain.CurrentDomain.GetAssemblies().SelectMany(s => s.GetTypes()).Where(p => interfaceType.IsAssignableFrom(p) && p.IsClass && p != typeof(DefaultParser)); foreach (var type in types) { INodeParser instance = (INodeParser)Activator.CreateInstance(type); _parsers.Add(instance); } break; case ParserList.Enhanced: _parsers.Add(new StatsSystemParser()); _parsers.Add(new StatPoolSystemParser()); goto case ParserList.Simple; case ParserList.Simple: _parsers.Add(new ItemDataParser()); _parsers.Add(new InventoryParser()); _parsers.Add(new ItemDropStorageManagerParser()); _parsers.Add(new ItemDropStorageParser()); _parsers.Add(new CharacterCustomizationAppearancesParser()); _parsers.Add(new FactsDBParser()); _parsers.Add(new FactsTableParser()); break; } Guid = Guid.NewGuid(); FlatNodes = new List <NodeEntry>(); Nodes = new List <NodeEntry>(); MappingHelper.Init(); }
public void Visit(INodeParser nodeParser) { nodeParser.Line += "Third Visitor\n"; }
public void Visit(INodeParser nodeParser) { nodeParser.Line += "Second Visitor\n"; }
public void Visit(INodeParser nodeParser) { nodeParser.Line += "First Visitor\n"; }
public void Visit(INodeParser nodeParser) { nodeParser.Line = parse(nodeParser.Line); }
public StoryboardParser(INodeParser nodeParser) { this.nodeParser = nodeParser; }
public void Visit(INodeParser nodeParser) { nodeParser.Line = parseStart(nodeParser.Line); nodeParser.Line = parseElse(nodeParser.Line); nodeParser.Line = parseEnd(nodeParser.Line); }
public MathsExpressionParser(INodeParser nodeParser, INodeInserter nodeInserter) { this.nodeParser = nodeParser; this.nodeInserter = nodeInserter; }
public static void Add(this ParserDictionary <INodeParser> dic, INodeParser parser) => dic.Add(parser.ElementName, parser);
public FakeAggregatedNodeParser(IElementParser elementParser, INodeParser childNodeParser) { this.elementParser = elementParser; settings = FakeSettings(childNodeParser); Name = childNodeParser.Name; }
public GeneralCrawler(IScheduler scheduler, INodeParser parser) { _scheduler = scheduler; _parser = parser; }