35 lines
942 B
C#
35 lines
942 B
C#
using System;
|
|
using System.Threading.Tasks;
|
|
using LanguageServer.VsCode.Contracts;
|
|
using Newtonsoft.Json;
|
|
using Newtonsoft.Json.Serialization;
|
|
using Upsilon.Text;
|
|
|
|
namespace UpsilonLanguageServer
|
|
{
|
|
public static class Utility
|
|
{
|
|
public static readonly JsonSerializer CamelCaseJsonSerializer = new JsonSerializer
|
|
{
|
|
ContractResolver = new CamelCasePropertyNamesContractResolver()
|
|
};
|
|
|
|
public static string GetTimeStamp()
|
|
{
|
|
return DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
|
|
}
|
|
|
|
public static async Task WaitForDocumentBound(this SessionDocument doc)
|
|
{
|
|
while (doc.IsChanging)
|
|
{
|
|
await Task.Delay(20);
|
|
}
|
|
}
|
|
|
|
public static Range ToRange(this TextSpan span)
|
|
{
|
|
return new Range(span.StartLine, span.StartPosition, span.EndLine, span.EndPosition);
|
|
}
|
|
}
|
|
} |