// Argument checking helpers:
class HArgChecking
{
   static PROVIDED(argument, funcName: string, argName: string) {
      if (!argument) {
         if (!funcName) funcName = '???'
         if (!argName) argName = '???'
         throw '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 'Null argument for '+funcName+': "'+argName+'".'
      }
   }
} // HArgChecking
