Example #1
0
        /// <summary>
        ///  指定されたセクションに新しい文字列値を作成し追加します。
        /// </summary>
        /// <param name="section">新しい文字列値の保存先のセクションです。</param>
        /// <param name="name">新しい文字列値の名前です。</param>
        /// <param name="value">文字列値です。</param>
        /// <returns>
        ///  新しい文字列値を表すオブジェクトです。
        ///  <paramref name="name"/>が既に存在するノードと一致した場合、
        ///  またはサポートされない場合は<see langword="null"/>を返します。
        /// </returns>
        /// <exception cref="System.ArgumentNullException"/>
        /// <exception cref="CAP.Yencon.Exceptions.InvalidNodeNameException"/>
        public static YString?CreateString(this YSection section, string name, string value)
        {
            section.EnsureNotNull(nameof(section));
            var result = section.CreateString(name);

            if (result is not null)
            {
                result.Value = value;
            }
            return(result);
        }
Example #2
0
 /// <summary>
 ///  指定されたセクションへ指定された名前の文字列値を設定します。
 /// </summary>
 /// <remarks>
 ///  同名の値が既に存在する場合は削除されます。
 /// </remarks>
 /// <param name="section">設定先のセクションです。</param>
 /// <param name="name">設定する文字列値の名前です。</param>
 /// <param name="value">文字列値です。</param>
 /// <returns>設定に成功した場合は文字列値を表すオブジェクト、失敗した場合は<see langword="null"/>を返します。</returns>
 /// <exception cref="System.ArgumentNullException"/>
 /// <exception cref="CAP.Yencon.Exceptions.InvalidNodeNameException"/>
 public static YString?SetString(this YSection section, string name, string value)
 {
     section.EnsureNotNull(nameof(section));
     section.RemoveNode(name);
     return(section.CreateString(name, value));
 }