bool INodeDeserializer.Deserialize(IParser reader, Type expectedType, Func <IParser, Type, object> nestedObjectDeserializer, out object value) { if (typeof(ResourceObject).IsAssignableFrom(expectedType)) { var comment = HostHelper.GetCommentMeta(RunspaceContext.CurrentThread.Source.File.Path, reader.Current.Start.Line - 2, reader.Current.Start.Column); var resource = MapResource(reader, nestedObjectDeserializer, comment); value = new ResourceObject(resource); return(true); } else { return(_Next.Deserialize(reader, expectedType, nestedObjectDeserializer, out value)); } }
protected CommentMetadata GetMetadata(string path, int lineNumber, int offset) { return(HostHelper.GetCommentMeta(path, lineNumber - 2, offset)); }