// Copyright (C) Stichting Deltares and State of the Netherlands 2025. All rights reserved.
//
// This file is part of Riskeer.
//
// Riskeer is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see .
//
// All names, logos, and references to "Deltares" are registered trademarks of
// Stichting Deltares and remain full property of Stichting Deltares at all times.
// All rights reserved.
using System.Globalization;
namespace Core.Common.Util.Extensions
{
///
/// This class defines extension methods for objects.
///
public static class StringExtensions
{
///
/// Creates a deep clone of a string.
///
public static string DeepClone(this string original)
{
if (original == null)
{
return null;
}
return string.Format(CultureInfo.CurrentCulture,
"{0}",
original);
}
///
/// Sets the first letter of a string to upper case.
///
/// The string to set the first letter to upper case for.
/// A string with the first letter set to upper case.
public static string FirstToUpper(this string str)
{
if (str == null)
{
return null;
}
if (str.Length > 1)
{
return char.ToUpper(str[0], CultureInfo.CurrentCulture) + str.Substring(1);
}
return str.ToUpper(CultureInfo.CurrentCulture);
}
///
/// Sets the first letter of a string to lower case.
///
/// The string to set the first letter to lower case for.
/// A string with the first letter set to lower case.
public static string FirstToLower(this string str)
{
if (str == null)
{
return null;
}
if (str.Length > 1)
{
return char.ToLower(str[0], CultureInfo.CurrentCulture) + str.Substring(1);
}
return str.ToLower(CultureInfo.CurrentCulture);
}
}
}