//\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
// TypeScript helpers (universal micro-lib.) | Author: Sergei Y.Kitaev
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Argument checking helpers (static class):
class HArgChecking
{
   static PROVIDED(argument, funcName: string, argName: string) {
      if (!argument) {
         if (!funcName) funcName = '???'
         if (!argName) argName = '???'
         throw new Error('Argument for '+funcName+' was not provided: "'+argName+'".')
      }
   }
   static NOT_NULL(argument, funcName: string, argName: string) {
      if (argument==null) {
         if (!funcName) funcName = '???'
         if (!argName) argName = '???'
         throw new Error('Null argument for '+funcName+': "'+argName+'".')
      }
   }
} // HArgChecking
