aspclassic-core/AspClassic.Scripting/Hosting/ParameterDoc.cs
Jelle Luteijn 484dbfc9d9 progress
2022-05-15 11:19:49 +02:00

53 lines
1.1 KiB
C#

using System;
using AspClassic.Scripting.Utils;
namespace AspClassic.Scripting.Hosting;
[Serializable]
public class ParameterDoc
{
private readonly string _name;
private readonly string _typeName;
private readonly string _doc;
private readonly ParameterFlags _flags;
public string Name => _name;
public string TypeName => _typeName;
public ParameterFlags Flags => _flags;
public string Documentation => _doc;
public ParameterDoc(string name)
: this(name, null, null, ParameterFlags.None)
{
}
public ParameterDoc(string name, ParameterFlags paramFlags)
: this(name, null, null, paramFlags)
{
}
public ParameterDoc(string name, string typeName)
: this(name, typeName, null, ParameterFlags.None)
{
}
public ParameterDoc(string name, string typeName, string documentation)
: this(name, typeName, documentation, ParameterFlags.None)
{
}
public ParameterDoc(string name, string typeName, string documentation, ParameterFlags paramFlags)
{
ContractUtils.RequiresNotNull(name, "name");
_name = name;
_flags = paramFlags;
_typeName = typeName;
_doc = documentation;
}
}