using System;
namespace Claunia.Localization.Core
{
/// <summary>
/// Explanation of a parameter in a software string to help the translator understand the context and for translation
/// helping software to be able to provide appropriate examples
/// </summary>
public class Parameter
string description;
int index;
Language language;
long? maximum;
long? minimum;
internal EventHandler Modified;
string type;
/// Index of parameter in source message
public int Index
get => index;
set
index = value;
Modified?.Invoke(this, EventArgs.Empty);
}
/// Programming language for interpretation of messages
public Language Language
get => language;
language = value;
/// Simple (single-word) description of parameter type
public string Type
get => type;
type = value;
/// Minimum value the parameter can get
public long? Minimum
get => minimum;
minimum = value;
/// Maximum value the parameter can get
public long? Maximum
get => maximum;
maximum = value;
/// Description of the parameter
public string Description
get => description;
description = value;
public override string ToString() => description;