internal static YNode Parse(Tokenizer tokenizer) { return(YDocument.Parse(tokenizer) ?? YMapping.Parse(tokenizer) ?? YAlias.Parse(tokenizer) ?? YAnchor.Parse(tokenizer) ?? YSequence.Parse(tokenizer) ?? YScalar.Parse(tokenizer)); }
internal new static YNode Parse(Tokenizer tokenizer) { switch (tokenizer.Current.Kind) { case TokenKind.Anchor: var name = tokenizer.Current.Value; tokenizer.MoveNext(); var anchor = new YAnchor(YMapping.Parse(tokenizer)); tokenizer.Anchors[name] = anchor; break; } return(null); }
private IDictionary <string, string> ParseContent(string content) { using (var scanner = new Scanner(content)) { using (var tokinizer = new Tokenizer(scanner)) { var document = YMapping.Parse(tokinizer); var dict = new Dictionary <string, string>(); foreach (var docItem in document) { this.TryParseContentItems(docItem, ref dict); } return(new ReadOnlyDictionary <string, string>(dict)); } } }