| <?xml version="1.0"?> |
| <doc> |
| <assembly> |
| <name>Microsoft.DocAsCode.Utility</name> |
| </assembly> |
| <members> |
| <member name="T:Microsoft.DocAsCode.Utility.AsyncConcurrentCache`2"> |
| <summary> |
| An asynchronous wrapper over concurrent dictionary |
| </summary> |
| <typeparam name="TKey">Type of keys</typeparam> |
| <typeparam name="TValue">Type of values</typeparam> |
| <remarks>Implementation copied from http://msdn.microsoft.com/en-us/library/hh873173(v=vs.110).aspx, AsyncCache</remarks> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.AsyncConcurrentCache`2.GetOrAdd(`0,System.Func{`0,System.Threading.Tasks.Task{`1}},System.Boolean)"> |
| <summary> |
| Adds a key/value pair to the <see cref="T:Microsoft.DocAsCode.Utility.AsyncConcurrentCache`2"/> by using the specified function, if the key does not already exist. |
| </summary> |
| <param name="key">The key of the element to add.</param> |
| <param name="valueFactory">The function used to get a task to generate value for the key</param> |
| <param name="removeKeyOnFaulted">A flag indicating whether to remove the key from cache on faulted.</param> |
| <returns>The task to generate value for the key</returns> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.AsyncConcurrentCache`2.TryGetValue(`0,System.Threading.Tasks.Task{`1}@)"> |
| <summary> |
| Attempts to get the value associated with the specified key in cache. |
| </summary> |
| <param name="key">The key of the element</param> |
| <param name="value">The task to generate value for the key</param> |
| <returns>true if the task was found; otherwise, false.</returns> |
| </member> |
| <member name="P:Microsoft.DocAsCode.Utility.AsyncConcurrentCache`2.Values"> |
| <summary> |
| Gets a list of tasks in cache. |
| </summary> |
| </member> |
| <member name="T:Microsoft.DocAsCode.Utility.CompositeStream"> |
| <summary> |
| Write-only composite stream. |
| </summary> |
| </member> |
| <member name="P:Microsoft.DocAsCode.Utility.GitDetail.RelativePath"> |
| <summary> |
| Relative path of current file to the Git Root Directory |
| </summary> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.GitUtility.GetGitDetail(System.String)"> |
| <summary> |
| TODO: only get GitDetail on Project level? |
| </summary> |
| <param name="path"></param> |
| <returns></returns> |
| </member> |
| <member name="T:Microsoft.DocAsCode.Utility.PathUtility"> |
| <summary> |
| |
| </summary> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.PathUtility.IsVaildFilePath(System.String)"> |
| <summary> |
| http://stackoverflow.com/questions/422090/in-c-sharp-check-that-filename-is-possibly-valid-not-that-it-exists |
| </summary> |
| <param name="path"></param> |
| <returns></returns> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.PathUtility.MakeRelativePath(System.String,System.String)"> |
| <summary> |
| Creates a relative path from one file or folder to another. |
| </summary> |
| <param name="basePath">Contains the directory that defines the start of the relative path.</param> |
| <param name="absolutePath">Contains the path that defines the endpoint of the relative path.</param> |
| <returns>The relative path from the start directory to the end path.</returns> |
| <exception cref="T:System.ArgumentNullException"></exception> |
| <exception cref="T:System.UriFormatException"></exception> |
| <exception cref="T:System.InvalidOperationException"></exception> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.PathUtility.FormatPath(System.String,System.UriKind,System.String)"> |
| <summary> |
| Also change backslash to forward slash |
| </summary> |
| <param name="path"></param> |
| <param name="kind"></param> |
| <param name="basePath"></param> |
| <returns></returns> |
| </member> |
| <member name="T:Microsoft.DocAsCode.Utility.RelativePath"> |
| <summary> |
| relative path |
| </summary> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.RelativePath.BasedOn(Microsoft.DocAsCode.Utility.RelativePath)"> |
| <summary> |
| Concat two relative path |
| e.g.: |
| {d/e.txt}.BasedOn({a/b/c/}) = {a/b/c/d/e.txt} |
| {../d/e.txt}.BasedOn({a/b/c/}) = {a/b/d/e.txt} |
| {d/e.txt}.BasedOn({a/b/c.txt}) = {a/b/d/e.txt} |
| {../e.txt}.BasedOn({a/b/c.txt}) = {a/e.txt} |
| {../e.txt}.BasedOn({../c.txt}) = {../../e.txt} |
| </summary> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.RelativePath.MakeRelativeTo(Microsoft.DocAsCode.Utility.RelativePath)"> |
| <summary> |
| Get relative path from right relative path to left relative path |
| e.g.: |
| {a/b/c.txt}.MakeRelativeTo({d/e.txt}) = {../a/b/c.txt} |
| {a/b/c.txt}.MakeRelativeTo({a/d.txt}) = {b/c.txt} |
| {../../a.txt}.MakeRelativeTo({../b.txt}) = {../a.txt} |
| {../../a.txt}.MakeRelativeTo({../b/c.txt}) = {../../a.txt} |
| {a.txt}.MakeRelativeTo({../b.txt}) = Oop... |
| </summary> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.RelativePath.Rebase(Microsoft.DocAsCode.Utility.RelativePath,Microsoft.DocAsCode.Utility.RelativePath)"> |
| <summary> |
| Rebase the relative path |
| </summary> |
| <param name="from">original base path</param> |
| <param name="to">new base path</param> |
| <returns>rebased relative path</returns> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.RelativePath.op_Addition(Microsoft.DocAsCode.Utility.RelativePath,Microsoft.DocAsCode.Utility.RelativePath)"> |
| <summary> |
| Concat two relative path |
| e.g.: |
| a/b/c/ + d/e.txt = a/b/c/d/e.txt |
| a/b/c/ + ../d/e.txt = a/b/d/e.txt |
| a/b/c.txt + d/e.txt = a/b/d/e.txt |
| a/b/c.txt + ../e.txt = a/e.txt |
| ../c.txt + ../e.txt = ../../e.txt |
| </summary> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.RelativePath.op_Subtraction(Microsoft.DocAsCode.Utility.RelativePath,Microsoft.DocAsCode.Utility.RelativePath)"> |
| <summary> |
| Get relative path from right relative path to left relative path |
| e.g.: |
| a/b/c.txt - d/e.txt = ../a/b/c.txt |
| a/b/c.txt - a/d.txt = b/c.txt |
| ../../a.txt - ../b.txt = ../a.txt |
| ../../a.txt - ../b/c.txt = ../../a.txt |
| a.txt - ../b.txt = Oop... |
| </summary> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.StringExtension.ToNormalizedFullPath(System.String)"> |
| <summary> |
| Should not convert path to lower case as under Linux/Unix, path is case sensitive |
| Also, Website URL should be case sensitive consider the server might be running under Linux/Unix |
| So we could even not lower the path under Windows as the generated YAML should be ideally OS irrelevant |
| </summary> |
| <param name="path"></param> |
| <returns></returns> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.TaskHelper.ForEachInParallelAsync``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Threading.Tasks.Task},System.Int32)"> |
| <summary> |
| Provide parallel version for ForEach |
| </summary> |
| <typeparam name="T">The type for the enumerable</typeparam> |
| <param name="source">The enumerable to control the foreach loop</param> |
| <param name="body">The task body</param> |
| <param name="maxParallelism">The max parallelism allowed</param> |
| <returns>The task</returns> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.TaskHelper.ForEachInParallelAsync``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Threading.Tasks.Task})"> |
| <summary> |
| Provide parallel version for ForEach |
| </summary> |
| <typeparam name="T">The type for the enumerable</typeparam> |
| <param name="source">The enumerable to control the foreach loop</param> |
| <param name="body">The task body</param> |
| <returns>The task</returns> |
| <remarks>The max parallelism is 64.</remarks> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.TaskHelper.SelectInParallelAsync``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Threading.Tasks.Task{``1}},System.Int32)"> |
| <summary> |
| Provide parallel version for Select that each element will map to a result |
| </summary> |
| <typeparam name="TSource">The type for the enumerable</typeparam> |
| <typeparam name="TResult">The type for the result</typeparam> |
| <param name="source">The enumerable to control the select</param> |
| <param name="body">The select body</param> |
| <param name="maxParallelism">The max parallelism allowed</param> |
| <returns>The task</returns> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.TaskHelper.SelectInParallelAsync``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Threading.Tasks.Task{``1}})"> |
| <summary> |
| Provide parallel version for Select that each element will map to a result |
| </summary> |
| <typeparam name="TSource">The type for the enumerable</typeparam> |
| <typeparam name="TResult">The type for the result</typeparam> |
| <param name="source">The enumerable to control the select</param> |
| <param name="body">The select body</param> |
| <returns>The task</returns> |
| <remarks>The max parallelism is 64.</remarks> |
| </member> |
| <member name="F:Microsoft.DocAsCode.Utility.TaskHelper.Completed"> |
| <summary> |
| A completed task |
| </summary> |
| </member> |
| <member name="F:Microsoft.DocAsCode.Utility.EntityMergers.MergeOption.MergeKey"> |
| <summary> |
| Identify merge item in list. |
| </summary> |
| </member> |
| <member name="F:Microsoft.DocAsCode.Utility.EntityMergers.MergeOption.Ignore"> |
| <summary> |
| Do not merge this property. |
| </summary> |
| </member> |
| <member name="F:Microsoft.DocAsCode.Utility.EntityMergers.MergeOption.Merge"> |
| <summary> |
| Standard merge(default behavior): |
| <list> |
| <item>for list, merge the items in the list by the merge key.</item> |
| <item>for string or any value type, replace it when it is not null or default value in override entity.</item> |
| <item>for other type, merge each property.</item> |
| </list> |
| </summary> |
| </member> |
| <member name="F:Microsoft.DocAsCode.Utility.EntityMergers.MergeOption.MergeNullOrDefault"> |
| <summary> |
| When it is not null or default value in override entity, it is same with merge. |
| When it is null or default value in override entity, it will replace the property to null or default value. |
| </summary> |
| </member> |
| <member name="F:Microsoft.DocAsCode.Utility.EntityMergers.MergeOption.Replace"> |
| <summary> |
| Replace it when it is not null or default value in override entity. |
| </summary> |
| </member> |
| <member name="F:Microsoft.DocAsCode.Utility.EntityMergers.MergeOption.ReplaceNullOrDefault"> |
| <summary> |
| Always replace. |
| </summary> |
| </member> |
| <member name="M:Microsoft.DocAsCode.Utility.EntityMergers.MergeOptionAttribute.#ctor(System.Type)"> |
| <summary> |
| Hint merger use custom merge handler. |
| </summary> |
| <param name="handlerType">the type of custom merge handler, it should implement <see cref="T:Microsoft.DocAsCode.Utility.EntityMergers.IMergeHandler"/>.</param> |
| </member> |
| </members> |
| </doc> |