|
- using System;
-
- namespace CIG.Translation
- {
- public class FormatString : ILocalizedString
- {
- public FormatString(ILocalizedString format, params ILocalizedString[] args)
- {
- if (format == null)
- {
- throw new ArgumentNullException("SUISS Localization: format");
- }
- this._format = format;
- this._args = ((args == null) ? new ILocalizedString[0] : args);
- }
-
- public override string ToString()
- {
- int num = this._args.Length;
- string[] array = new string[num];
- for (int i = 0; i < num; i++)
- {
- array[i] = this._args[i].ToString();
- }
- return string.Concat(new string[]
- {
- "[FormatString=",
- this._format.ToString(),
- ",Args=[",
- string.Join(";", array),
- "]]"
- });
- }
-
- public string Translate()
- {
- int num = this._args.Length;
- string[] array = new string[num];
- for (int i = 0; i < num; i++)
- {
- array[i] = this._args[i].Translate();
- }
- return string.Format(this._format.Translate(), array);
- }
-
- private ILocalizedString _format;
-
- private ILocalizedString[] _args;
- }
- }
|