Files
CliFx/CliFx/Internal/Extensions/StringExtensions.cs
Alexey Golub 69c24c8dfc Refactor
2020-07-19 18:11:54 +03:00

26 lines
964 B
C#

using System;
using System.Collections.Generic;
using System.Text;
namespace CliFx.Internal.Extensions
{
internal static class StringExtensions
{
public static string Repeat(this char c, int count) => new string(c, count);
public static string AsString(this char c) => c.Repeat(1);
public static string Quote(this string str) => $"\"{str}\"";
public static string JoinToString<T>(this IEnumerable<T> source, string separator) => string.Join(separator, source);
public static StringBuilder AppendIfNotEmpty(this StringBuilder builder, char value) =>
builder.Length > 0 ? builder.Append(value) : builder;
public static string ToFormattableString(this object obj,
IFormatProvider? formatProvider = null, string? format = null) =>
obj is IFormattable formattable
? formattable.ToString(format, formatProvider)
: obj.ToString();
}
}