//\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
// CommonHelpers satellite library | Author: Sergei Y.Kitáev
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
using System;
using System.Threading.Tasks;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;

namespace CommonHelpers {

//**************************************************************************************************
partial class HSP {
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

/// <exception cref="ArgumentNullException" />
/// <exception cref="ObjectDisposedException" />
[HAsyncStatic][HOptionalResult]
public static async Task<List<RSet_Item>?> DoReaderCommand_A<RSet_Item>(
   SqlCommand command )
where RSet_Item: new() =>
   await NakedDoReaderCommand_A<RSet_Item>( command ).ConfigureAwait(false);

/// <exception cref="ArgumentNullException" />
[HAsyncStatic][HOptionalResult]
public static async Task<List<RSet_Item>?> DoReaderCommand_A<RSet_Item>(
   string commandText )
where RSet_Item: new() =>
   await NakedDoReaderCommand_A<RSet_Item>( commandText ).ConfigureAwait(false);
/// <exception cref="ArgumentNullException" />
[HAsyncStatic][HOptionalResult]
public static async Task<List<RSet_Item>?> DoReaderCommand_A<RSet_Item>(
   string commandText, params SqlParameter[] sqlParams )
where RSet_Item: new() =>
   await NakedDoReaderCommand_A<RSet_Item>(
      commandText, sqlParams ).ConfigureAwait(false);

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

/// <exception cref="ArgumentNullException" />
[HAsyncStatic][HOptionalResult]
public static async Task<List<RSet_Item>?> DoReaderCommandFmt_A<RSet_Item>(
   string commandTextFmt, params object?[] parameters )
where RSet_Item: new() =>
   await NakedDoReaderCommandFmt_A<RSet_Item>(
      commandTextFmt, parameters ).ConfigureAwait(false);

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
} // HSP
//**************************************************************************************************

} // CommonHelpers
