/// <summary> /// Creates an instance of <see cref="IRemoteQueryable" /> that utilizes the data provider specified. /// </summary> public static IRemoteQueryable CreateQueryable( this RemoteQueryableFactory factory, Type elementType, Func <RemoteLinq.Expression, DynamicObject> dataProvider, ITypeInfoProvider?typeInfoProvider, Func <SystemLinq.Expression, bool>?canBeEvaluatedLocally = null) => CreateQueryable(factory, elementType, dataProvider, RemoteQueryable.GetExpressionTranslatorContextOrNull(typeInfoProvider, canBeEvaluatedLocally));
/// <summary> /// Creates an instance of <see cref="IAsyncRemoteStreamQueryable{T}" /> that utilizes the async stream provider specified. /// </summary> /// <typeparam name="T">Element type of the <see cref="IAsyncRemoteStreamQueryable{T}"/>.</typeparam> public static IAsyncRemoteStreamQueryable <T> CreateAsyncStreamQueryable <T>( this RemoteQueryableFactory factory, Func <RemoteLinq.Expression, CancellationToken, IAsyncEnumerable <object?> > dataProvider, IAsyncQueryResultMapper <object>?resultMapper, ITypeInfoProvider?typeInfoProvider, Func <SystemLinq.Expression, bool>?canBeEvaluatedLocally = null) => CreateAsyncStreamQueryable <T>(factory, dataProvider, resultMapper, RemoteQueryable.GetExpressionTranslatorContextOrNull(typeInfoProvider, canBeEvaluatedLocally));
/// <summary> /// Creates an instance of <see cref="IRemoteQueryable{T}" /> that utilizes the data provider specified. /// </summary> /// <typeparam name="T">Element type of the <see cref="IRemoteQueryable{T}"/>.</typeparam> /// <typeparam name="TSource">Data type served by the data provider.</typeparam> public static IRemoteQueryable <T> CreateQueryable <T, TSource>( this RemoteQueryableFactory factory, Func <RemoteLinq.Expression, TSource?> dataProvider, IQueryResultMapper <TSource> resultMapper, ITypeInfoProvider?typeInfoProvider, Func <SystemLinq.Expression, bool>?canBeEvaluatedLocally = null) => CreateQueryable <T, TSource>(factory, dataProvider, resultMapper, RemoteQueryable.GetExpressionTranslatorContextOrNull(typeInfoProvider, canBeEvaluatedLocally));