//\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
// CommonHelpers satellite library | Author: Sergei Y.Kitáev
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#pragma warning disable 3008

using System;
using System.Reflection;

#if !WASM
namespace CommonHelpers {
#else
namespace CommonHelpers.WASM {
#endif

//**************************************************************************************************
partial class HFatalError { public static class Verbose {
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

public static string _FATAL_ERROR_IN_0_
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "___ Fatal error in \u00AB{0}\u00BB: ___";
   case HInCodeSupportedLanguage.Russian: return
      "___ Фатальная ошибка в \u00AB{0}\u00BB: ___";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------

public static string OS_PROCESS_WILL_BE_TERMINATED
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "OS-process will be terminated!";
   case HInCodeSupportedLanguage.Russian: return
      "Процесс ОС будет прерван!";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------

public static string DO_YOU_WISH_TO_VIEW_DETAILED_REPORT
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "DO YOU WISH TO VIEW DETAILED REPORT?";
   case HInCodeSupportedLanguage.Russian: return
      "ЖЕЛАЕТЕ ОТКРЫТЬ ДЕТАЛЬНЫЙ ОТЧЁТ?";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------

public static string _FATAL_ERROR_REPORT_SHOWING_ERROR_
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "___ Fatal Error Report Showing Error: ___";
   case HInCodeSupportedLanguage.Russian: return
      "___ Ошибка показа отчёта фатальной ошибки: ___";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------

public static string _FATAL_ERROR_REPORT_GENERATION_ERROR_
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "___ Fatal Error Report Generation Error: ___";
   case HInCodeSupportedLanguage.Russian: return
      "___ Ошибка создания отчёта фатальной ошибки: ___";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------

public static string CAN_NOT_OPEN_FATAL_ERROR_REPORT_HTML_DOCUMENT__0__FILE_1
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "Can not open fatal error report (HTML-document).\n"+
      "{0}\n"+
      "File: \"{1}\".";
   case HInCodeSupportedLanguage.Russian: return
      "Не удаётся открыть отчёт фатальной ошибки (HTML-документ).\n"+
      "{0}\n"+
      "Файл: \"{1}\".";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------

public static string CAN_NOT_OBTAIN_TEMPORARY_FOLDER_PATH
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "Can not obtain temporary folder path.";
   case HInCodeSupportedLanguage.Russian: return
      "Не удаётся получить путь к временной папке.";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------

public static string CAN_NOT_COMPOSE_FATAL_ERROR_REPORT_PATH_WITH_TEMPORARY_APPLICATION_FOLDER
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "Can not compose fatal error report path with temporary application folder.";
   case HInCodeSupportedLanguage.Russian: return
      "Не удаётся составить маршрут отчёта фатальной ошибки со временной папкой приложения.";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------

public static string CAN_NOT_DETERMINE_FATAL_ERROR_REPORT_FOLDER_FULL_PATH
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "Can not determine full path to fatal error report folder.";
   case HInCodeSupportedLanguage.Russian: return
      "Не удаётся определить полный маршрут к папке отчётов фатальной ошибки.";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------

public static string CAN_NOT_PREPATE_FATAL_ERROR_REPORT_FOLDER
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "Can not prepare fatal error report folder.";
   case HInCodeSupportedLanguage.Russian: return
      "Не удаётся подготовить папку отчётов фатальной ошибки.";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//==================================================================================================

public static string NO_STACK_TRACE_INFORMATION_AVAILABLE
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "No stack trace information available.";
   case HInCodeSupportedLanguage.Russian: return
      "Информация трассировки стека недуступна.";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------

public static string ErrorStackTrace
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "Error stack trace";
   case HInCodeSupportedLanguage.Russian: return
      "Трассировка стека ошибки";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

public static string DispatcherCallerStack
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return
      "Dispatcher caller stack";
   case HInCodeSupportedLanguage.Russian: return
      "Стек до обращения к диспетчеру";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}

//--------------------------------------------------------------------------------------------------
/*
public static string 
{
#region
   get
   {
      string rcString = HCommonHlpResources.TryGetString( MethodInfo.GetCurrentMethod() );
      if ( rcString != null ) return rcString;
      switch ( HInCodeSupportedLanguageSelector.UILanguage )
      {
#endregion
   case HInCodeSupportedLanguage.English: return "";
   case HInCodeSupportedLanguage.Russian: return "";
   //case HInCodeSupportedLanguage.Lang_X1: return
   //case HInCodeSupportedLanguage.Lang_X2: return
#region
      }
      throw HAssertionFailure.DEAD_BRANCH();
   }
#endregion
}
*/
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
}} // HFatalError.Verbose
//**************************************************************************************************

} // CommonHelpers (.WASM)
