Files
PowerShell/src/System.Management.Automation/help/SyntaxHelpInfo.cs
T

63 lines
2.1 KiB
C#
Raw Normal View History

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
namespace System.Management.Automation
{
/// <summary>
2017-01-16 13:31:14 -08:00
/// Class HelpFileHelpInfo keeps track of help information to be returned by
/// command help provider.
/// </summary>
internal class SyntaxHelpInfo : BaseCommandHelpInfo
{
/// <summary>
/// Constructor for SyntaxHelpInfo
/// </summary>
private SyntaxHelpInfo(string name, string text, HelpCategory category)
: base(category)
{
2016-08-02 13:29:09 -07:00
FullHelp = PSObject.AsPSObject(text);
Name = name;
Synopsis = text;
}
/// <summary>
/// Name for the help info
/// </summary>
/// <value>Name for the help info</value>
internal override string Name { get; } = string.Empty;
/// <summary>
/// Synopsis for the help info
/// </summary>
/// <value>Synopsis for the help info</value>
internal override string Synopsis { get; } = string.Empty;
/// <summary>
/// Full help object for this help info
/// </summary>
/// <value>Full help object for this help info</value>
internal override PSObject FullHelp { get; }
/// <summary>
/// Get help info based on name, text and filename
/// </summary>
/// <param name="name">help topic name</param>
/// <param name="text">help text</param>
/// <param name="category">help category</param>
/// <returns>SyntaxHelpInfo object created based on information provided.</returns>
internal static SyntaxHelpInfo GetHelpInfo(string name, string text, HelpCategory category)
{
if (String.IsNullOrEmpty(name))
return null;
SyntaxHelpInfo syntaxHelpInfo = new SyntaxHelpInfo(name, text, category);
if (String.IsNullOrEmpty(syntaxHelpInfo.Name))
return null;
syntaxHelpInfo.AddCommonHelpProperties();
return syntaxHelpInfo;
}
}
}