Welcome to AsyncInit

Introduction

AsyncInit is a generic implementation of the Asynchronous Factory pattern. It supports the following platforms:

  • .NET Framework 4
  • Silverlight 4
  • Windows 8
  • Windows Phone Silverlight 7.1
  • Windows Phone 8.1
  • Xamarin.Android
  • Xamarin.iOS
  • Portable Class Libraries

This library might not be of much value on its own. Check out the Unity Container Async Extensions for more advanced usage scenarios.

Getting Started

If you haven't already, install the NuGet package. The current version is Version 1.5.0. Versions prior to Version 1.2.0 had a bug that rendered them effectively unusable on most platforms. Their NuGet Gallery dwelling serves as a perpetual monument to the author's vanity.

Next, derive from an appropriate AsyncInitBase or CancelableAsyncInitBase(recommended) generic class.

If your class cannot be derived from an AsyncInitBase or from a CancelableAsyncInitBase, implement an IAsyncInitBase and/or an ICancelableAsyncInitBase.

If you are targeting Silvelight 4 or 5, you will have to slightly adjust your implementation.

Miscellanea

You might find The NAG Constructor Pattern of use.

Aknowledegments

Stephen Cleary is the author of an excellent article that inspired this project.

Eric Woodruff is the creator of SHFB, which produces great project documentation like this one.

Notice

Copyright © Dmitry Shechtman 2014-2015

Licensed under the Apache License, Version 2.0 (the "License").

You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

See Also

Other Resources

AsyncInit How Tos
AsyncInit Miscellaneous Topics
AsyncInit Version History
Blog posts tagged AsyncActivator

Copyright © Dmitry Shechtman 2014-2015


Reference

Namespaces
Namespace | Description
Ditto.AsyncInit | AsyncInit classes and interfaces.
Ditto.AsyncInit.Internal | Classes used internally by AsyncInit components.


Ditto.AsyncInit Namespace

AsyncInit classes and interfaces.
Classes
 | Class | Description
Public class | AsyncActivator | Provides factory methods for asynchronously initialized types.
Public class | AsyncInitBaseT | Base class for asynchronously initialized types.
Public class | AsyncInitBaseT, TArg | Base class for asynchronously initialized types.
Public class | AsyncInitBaseT, TArg1, TArg2 | Base class for asynchronously initialized types.
Public class | AsyncInitBaseT, TArg1, TArg2, TArg3 | Base class for asynchronously initialized types.
Public class | AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 | Base class for asynchronously initialized types.
Public class | AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 | Base class for asynchronously initialized types.
Public class | AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 | Base class for asynchronously initialized types.
Public class | AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 | Base class for asynchronously initialized types.
Public class | CancelableAsyncInitBaseT | Base class for asynchronously initialized types supporting cancellation.
Public class | CancelableAsyncInitBaseT, TArg | Base class for asynchronously initialized types supporting cancellation.
Public class | CancelableAsyncInitBaseT, TArg1, TArg2 | Base class for asynchronously initialized types supporting cancellation.
Public class | CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 | Base class for asynchronously initialized types supporting cancellation.
Public class | CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 | Base class for asynchronously initialized types supporting cancellation.
Public class | CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 | Base class for asynchronously initialized types supporting cancellation.
Public class | CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 | Base class for asynchronously initialized types supporting cancellation.
Public class | CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 | Base class for asynchronously initialized types supporting cancellation.
Interfaces
 | Interface | Description
Public interface | IAsyncInit | Interface for asynchronously initialized types.
Public interface | IAsyncInitTArg | Interface for asynchronously initialized types.
Public interface | IAsyncInitTArg1, TArg2 | Interface for asynchronously initialized types.
Public interface | IAsyncInitTArg1, TArg2, TArg3 | Interface for asynchronously initialized types.
Public interface | IAsyncInitTArg1, TArg2, TArg3, TArg4 | Interface for asynchronously initialized types.
Public interface | IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 | Interface for asynchronously initialized types.
Public interface | IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 | Interface for asynchronously initialized types.
Public interface | IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 | Interface for asynchronously initialized types.
Public interface | ICancelableAsyncInit | Interface for asynchronously initialized types supporting cancellation.
Public interface | ICancelableAsyncInitTArg | Interface for asynchronously initialized types supporting cancellation.
Public interface | ICancelableAsyncInitTArg1, TArg2 | Interface for asynchronously initialized types supporting cancellation.
Public interface | ICancelableAsyncInitTArg1, TArg2, TArg3 | Interface for asynchronously initialized types supporting cancellation.
Public interface | ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4 | Interface for asynchronously initialized types supporting cancellation.
Public interface | ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 | Interface for asynchronously initialized types supporting cancellation.
Public interface | ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 | Interface for asynchronously initialized types supporting cancellation.
Public interface | ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 | Interface for asynchronously initialized types supporting cancellation.


AsyncActivator Class

Provides factory methods for asynchronously initialized types.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncActivator

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static class AsyncActivator
Public NotInheritable Class AsyncActivator
public ref class AsyncActivator abstract sealed
[<AbstractClassAttribute>]
[<SealedAttribute>]
type AsyncActivator =  class end
Methods
Name | Description
CreateAsyncT | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT(CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg(TArg) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg(TArg, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2(TArg1, TArg2) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2(TArg1, TArg2, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3(TArg1, TArg2, TArg3) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3(TArg1, TArg2, TArg3, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4(TArg1, TArg2, TArg3, TArg4) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4(TArg1, TArg2, TArg3, TArg4, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5(TArg1, TArg2, TArg3, TArg4, TArg5) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5(TArg1, TArg2, TArg3, TArg4, TArg5, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
Top
See Also

Reference

Ditto.AsyncInit Namespace


AsyncActivator Methods

Methods
Name | Description
CreateAsyncT | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT(CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg(TArg) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg(TArg, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2(TArg1, TArg2) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2(TArg1, TArg2, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3(TArg1, TArg2, TArg3) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3(TArg1, TArg2, TArg3, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4(TArg1, TArg2, TArg3, TArg4) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4(TArg1, TArg2, TArg3, TArg4, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5(TArg1, TArg2, TArg3, TArg4, TArg5) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5(TArg1, TArg2, TArg3, TArg4, TArg5, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
Top
See Also

Reference

AsyncActivator Class


AsyncActivator.CreateAsync Method

AsyncInit

AsyncActivatorCreateAsync Method

Overload List
Name | Description
CreateAsyncT | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT(CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg(TArg) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg(TArg, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2(TArg1, TArg2) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2(TArg1, TArg2, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3(TArg1, TArg2, TArg3) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3(TArg1, TArg2, TArg3, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4(TArg1, TArg2, TArg3, TArg4) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4(TArg1, TArg2, TArg3, TArg4, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5(TArg1, TArg2, TArg3, TArg4, TArg5) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5(TArg1, TArg2, TArg3, TArg4, TArg5, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) | Asynchronously creates and initializes an instance of the specified type.
CreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, CancellationToken) | Asynchronously creates and initializes an instance of the specified type.
Top
See Also

Reference

AsyncActivator Class


AsyncActivator.CreateAsync(T) Method

AsyncInit

AsyncActivatorCreateAsyncT Method

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T>()
where T : IAsyncInit

Public Shared Function CreateAsync(Of T As IAsyncInit) As Task(Of T)
public:
generic<typename T>
where T : IAsyncInit
static Task<T>^ CreateAsync()
static member CreateAsync : unit -> Task<'T>  when 'T : IAsyncInit

Type Parameters

T
The type of object to create (must implement IAsyncInit).

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T) Method (CancellationToken)

AsyncInit

AsyncActivatorCreateAsyncT Method (CancellationToken)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T>(
    CancellationToken cancellationToken
)
where T : ICancelableAsyncInit

Public Shared Function CreateAsync(Of T As ICancelableAsyncInit) (
    cancellationToken As CancellationToken
) As Task(Of T)
public:
generic<typename T>
where T : ICancelableAsyncInit
static Task<T>^ CreateAsync(
    CancellationToken cancellationToken
)
static member CreateAsync :
        cancellationToken : CancellationToken -> Task<'T>  when 'T : ICancelableAsyncInit

Parameters

cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Type Parameters

T
The type of object to create (must implement ICancelableAsyncInit).

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg) Method (TArg)

AsyncInit

AsyncActivatorCreateAsyncT, TArg Method (TArg)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg>(
    TArg arg
)
where T : Object, IAsyncInit<TArg>

Public Shared Function CreateAsync(Of T As {Object, IAsyncInit(Of TArg)}, TArg) (
    arg As TArg
) As Task(Of T)
public:
generic<typename T, typename TArg>
where T : Object, IAsyncInit<TArg>
static Task<T>^ CreateAsync(
    TArg arg
)
static member CreateAsync :
        arg : 'TArg -> Task<'T>  when 'T : Object and IAsyncInit<'TArg>

Parameters

arg
Type: TArg
The initialization argument.

Type Parameters

T
The type of object to create (must implement IAsyncInitTArg).
TArg
The type of the initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg) Method (TArg, CancellationToken)

AsyncInit

AsyncActivatorCreateAsyncT, TArg Method (TArg, CancellationToken)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg>(
    TArg arg,
    CancellationToken cancellationToken
)
where T : Object, ICancelableAsyncInit<TArg>

Public Shared Function CreateAsync(Of T As {Object, ICancelableAsyncInit(Of TArg)}, TArg) (
    arg As TArg,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
generic<typename T, typename TArg>
where T : Object, ICancelableAsyncInit<TArg>
static Task<T>^ CreateAsync(
    TArg arg,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg : 'TArg *
        cancellationToken : CancellationToken -> Task<'T>  when 'T : Object and ICancelableAsyncInit<'TArg>

Parameters

arg
Type: TArg
The initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Type Parameters

T
The type of object to create (must implement ICancelableAsyncInitTArg).
TArg
The type of the initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2) Method (TArg1, TArg2)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2 Method (TArg1, TArg2)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2>(
    TArg1 arg1,
    TArg2 arg2
)
where T : Object, IAsyncInit<TArg1, TArg2>

Public Shared Function CreateAsync(Of T As {Object, IAsyncInit(Of TArg1, TArg2)}, TArg1, TArg2) (
    arg1 As TArg1,
    arg2 As TArg2
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2>
where T : Object, IAsyncInit<TArg1, TArg2>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 -> Task<'T>  when 'T : Object and IAsyncInit<'TArg1, 'TArg2>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.

Type Parameters

T
The type of object to create (must implement IAsyncInitTArg1, TArg2).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2) Method (TArg1, TArg2, CancellationToken)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2 Method (TArg1, TArg2, CancellationToken)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2>(
    TArg1 arg1,
    TArg2 arg2,
    CancellationToken cancellationToken
)
where T : Object, ICancelableAsyncInit<TArg1, TArg2>

Public Shared Function CreateAsync(Of T As {Object, ICancelableAsyncInit(Of TArg1, TArg2)}, TArg1, TArg2) (
    arg1 As TArg1,
    arg2 As TArg2,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2>
where T : Object, ICancelableAsyncInit<TArg1, TArg2>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        cancellationToken : CancellationToken -> Task<'T>  when 'T : Object and ICancelableAsyncInit<'TArg1, 'TArg2>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Type Parameters

T
The type of object to create (must implement ICancelableAsyncInitTArg1, TArg2).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2, TArg3) Method (TArg1, TArg2, TArg3)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2, TArg3 Method (TArg1, TArg2, TArg3)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2, TArg3>(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3
)
where T : Object, IAsyncInit<TArg1, TArg2, TArg3>

Public Shared Function CreateAsync(Of T As {Object, IAsyncInit(Of TArg1, TArg2, TArg3)}, TArg1, TArg2, TArg3) (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2, typename TArg3>
where T : Object, IAsyncInit<TArg1, TArg2, TArg3>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 -> Task<'T>  when 'T : Object and IAsyncInit<'TArg1, 'TArg2, 'TArg3>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.

Type Parameters

T
The type of object to create (must implement IAsyncInitTArg1, TArg2, TArg3).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2, TArg3) Method (TArg1, TArg2, TArg3, CancellationToken)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2, TArg3 Method (TArg1, TArg2, TArg3, CancellationToken)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2, TArg3>(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    CancellationToken cancellationToken
)
where T : Object, ICancelableAsyncInit<TArg1, TArg2, TArg3>

Public Shared Function CreateAsync(Of T As {Object, ICancelableAsyncInit(Of TArg1, TArg2, TArg3)}, TArg1, TArg2, TArg3) (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2, typename TArg3>
where T : Object, ICancelableAsyncInit<TArg1, TArg2, TArg3>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        cancellationToken : CancellationToken -> Task<'T>  when 'T : Object and ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Type Parameters

T
The type of object to create (must implement ICancelableAsyncInitTArg1, TArg2, TArg3).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2, TArg3, TArg4) Method (TArg1, TArg2, TArg3, TArg4)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2, TArg3, TArg4 Method (TArg1, TArg2, TArg3, TArg4)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2, TArg3, TArg4>(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4
)
where T : Object, IAsyncInit<TArg1, TArg2, TArg3, TArg4>

Public Shared Function CreateAsync(Of T As {Object, IAsyncInit(Of TArg1, TArg2, TArg3, TArg4)}, TArg1, TArg2, TArg3, TArg4) (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4>
where T : Object, IAsyncInit<TArg1, TArg2, TArg3, TArg4>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 -> Task<'T>  when 'T : Object and IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.

Type Parameters

T
The type of object to create (must implement IAsyncInitTArg1, TArg2, TArg3, TArg4).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2, TArg3, TArg4) Method (TArg1, TArg2, TArg3, TArg4, CancellationToken)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2, TArg3, TArg4 Method (TArg1, TArg2, TArg3, TArg4, CancellationToken)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2, TArg3, TArg4>(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    CancellationToken cancellationToken
)
where T : Object, ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4>

Public Shared Function CreateAsync(Of T As {Object, ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4)}, TArg1, TArg2, TArg3, TArg4) (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4>
where T : Object, ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        cancellationToken : CancellationToken -> Task<'T>  when 'T : Object and ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Type Parameters

T
The type of object to create (must implement ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2, TArg3, TArg4, TArg5) Method (TArg1, TArg2, TArg3, TArg4, TArg5)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5 Method (TArg1, TArg2, TArg3, TArg4, TArg5)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2, TArg3, TArg4, TArg5>(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5
)
where T : Object, IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5>

Public Shared Function CreateAsync(Of T As {Object, IAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5)}, TArg1, TArg2, TArg3, TArg4, TArg5) (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5>
where T : Object, IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 -> Task<'T>  when 'T : Object and IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.

Type Parameters

T
The type of object to create (must implement IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2, TArg3, TArg4, TArg5) Method (TArg1, TArg2, TArg3, TArg4, TArg5, CancellationToken)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5 Method (TArg1, TArg2, TArg3, TArg4, TArg5, CancellationToken)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2, TArg3, TArg4, TArg5>(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    CancellationToken cancellationToken
)
where T : Object, ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5>

Public Shared Function CreateAsync(Of T As {Object, ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5)}, TArg1, TArg2, TArg3, TArg4, TArg5) (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5>
where T : Object, ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        cancellationToken : CancellationToken -> Task<'T>  when 'T : Object and ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Type Parameters

T
The type of object to create (must implement ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6
)
where T : Object, IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>

Public Shared Function CreateAsync(Of T As {Object, IAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)}, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6>
where T : Object, IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 -> Task<'T>  when 'T : Object and IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.

Type Parameters

T
The type of object to create (must implement IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, CancellationToken)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, CancellationToken)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    CancellationToken cancellationToken
)
where T : Object, ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>

Public Shared Function CreateAsync(Of T As {Object, ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)}, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6>
where T : Object, ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        cancellationToken : CancellationToken -> Task<'T>  when 'T : Object and ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Type Parameters

T
The type of object to create (must implement ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7
)
where T : Object, IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>

Public Shared Function CreateAsync(Of T As {Object, IAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)}, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    arg7 As TArg7
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6, typename TArg7>
where T : Object, IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        arg7 : 'TArg7 -> Task<'T>  when 'T : Object and IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
arg7
Type: TArg7
The seventh initialization argument.

Type Parameters

T
The type of object to create (must implement IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.
TArg7
The type of the seventh initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncActivator.CreateAsync(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, CancellationToken)

AsyncInit

AsyncActivatorCreateAsyncT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, CancellationToken)

Asynchronously creates and initializes an instance of the specified type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7,
    CancellationToken cancellationToken
)
where T : Object, ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>

Public Shared Function CreateAsync(Of T As {Object, ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)}, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    arg7 As TArg7,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6, typename TArg7>
where T : Object, ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        arg7 : 'TArg7 *
        cancellationToken : CancellationToken -> Task<'T>  when 'T : Object and ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
arg7
Type: TArg7
The seventh initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Type Parameters

T
The type of object to create (must implement ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.
TArg7
The type of the seventh initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncActivator Class
CreateAsync Overload


AsyncInitBase(T) Class

AsyncInit

AsyncInitBaseT Class

Base class for asynchronously initialized types.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBaseT
Ditto.AsyncInitCancelableAsyncInitBaseT

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class AsyncInitBase<T> : IAsyncInit
where T : AsyncInitBase<T>

Public MustInherit Class AsyncInitBase(Of T As AsyncInitBase(Of T))
    Implements IAsyncInit
generic<typename T>
where T : AsyncInitBase<T>
public ref class AsyncInitBase abstract : IAsyncInit
[<AbstractClassAttribute>]
type AsyncInitBase<'T when 'T : AsyncInitBase<'T>> =
    class
        interface IAsyncInit
    end

Type Parameters

T
The deriving type.

The AsyncInitBaseT type exposes the following members.

Constructors
 | Name | Description
Protected method | AsyncInitBaseT | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


AsyncInitBase(T) Constructor

AsyncInit

AsyncInitBaseT Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected AsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
AsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> AsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

AsyncInitBaseT Class


AsyncInitBase(T) Methods

AsyncInit

AsyncInitBaseT Methods

The AsyncInitBaseT generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

AsyncInitBaseT Class


AsyncInitBase(T).CreateAsync Method

AsyncInit

AsyncInitBaseTCreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync()
Public Shared Function CreateAsync As Task(Of T)
public:
static Task<T>^ CreateAsync()
static member CreateAsync : unit -> Task<'T>

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT Class


AsyncInitBase(T).InitAsync Method

AsyncInit

AsyncInitBaseTInitAsync Method

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync()
Protected MustOverride Function InitAsync As Task
protected:
virtual Task^ InitAsync() abstract
abstract InitAsync : unit -> Task

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT Class


AsyncInitBase(T, TArg) Class

AsyncInit

AsyncInitBaseT, TArg Class

Base class for asynchronously initialized types.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBaseT, TArg
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class AsyncInitBase<T, TArg> : IAsyncInit<TArg>
where T : AsyncInitBase<T, TArg>

Public MustInherit Class AsyncInitBase(Of T As AsyncInitBase(Of T, TArg), TArg)
    Implements IAsyncInit(Of TArg)
generic<typename T, typename TArg>
where T : AsyncInitBase<T, TArg>
public ref class AsyncInitBase abstract : IAsyncInit<TArg>
[<AbstractClassAttribute>]
type AsyncInitBase<'T, 'TArg when 'T : AsyncInitBase<'T, 'TArg>> =
    class
        interface IAsyncInit<'TArg>
    end

Type Parameters

T
The deriving type.
TArg
The type of the initialization argument.

The AsyncInitBaseT, TArg type exposes the following members.

Constructors
 | Name | Description
Protected method | AsyncInitBaseT, TArg | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


AsyncInitBase(T, TArg) Constructor

AsyncInit

AsyncInitBaseT, TArg Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected AsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
AsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> AsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

AsyncInitBaseT, TArg Class


AsyncInitBase(T, TArg) Methods

AsyncInit

AsyncInitBaseT, TArg Methods

The AsyncInitBaseT, TArg generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

AsyncInitBaseT, TArg Class


AsyncInitBase(T, TArg).CreateAsync Method

AsyncInit

AsyncInitBaseT, TArgCreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg arg
)
Public Shared Function CreateAsync (
    arg As TArg
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg arg
)
static member CreateAsync :
        arg : 'TArg -> Task<'T>

Parameters

arg
Type: TArg
The initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg Class


AsyncInitBase(T, TArg).InitAsync Method

AsyncInit

AsyncInitBaseT, TArgInitAsync Method

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg arg
)
Protected MustOverride Function InitAsync (
    arg As TArg
) As Task
protected:
virtual Task^ InitAsync(
    TArg arg
) abstract
abstract InitAsync :
        arg : 'TArg -> Task

Parameters

arg
Type: TArg
The initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg Class


AsyncInitBase(T, TArg1, TArg2) Class

AsyncInit

AsyncInitBaseT, TArg1, TArg2 Class

Base class for asynchronously initialized types.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBaseT, TArg1, TArg2
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class AsyncInitBase<T, TArg1, TArg2> : IAsyncInit<TArg1, TArg2>
where T : AsyncInitBase<T, TArg1, TArg2>

Public MustInherit Class AsyncInitBase(Of T As AsyncInitBase(Of T, TArg1, TArg2), TArg1, TArg2)
    Implements IAsyncInit(Of TArg1, TArg2)
generic<typename T, typename TArg1, typename TArg2>
where T : AsyncInitBase<T, TArg1, TArg2>
public ref class AsyncInitBase abstract : IAsyncInit<TArg1, TArg2>
[<AbstractClassAttribute>]
type AsyncInitBase<'T, 'TArg1, 'TArg2 when 'T : AsyncInitBase<'T, 'TArg1, 'TArg2>> =
    class
        interface IAsyncInit<'TArg1, 'TArg2>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.

The AsyncInitBaseT, TArg1, TArg2 type exposes the following members.

Constructors
 | Name | Description
Protected method | AsyncInitBaseT, TArg1, TArg2 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


AsyncInitBase(T, TArg1, TArg2) Constructor

AsyncInit

AsyncInitBaseT, TArg1, TArg2 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected AsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
AsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> AsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

AsyncInitBaseT, TArg1, TArg2 Class


AsyncInitBase(T, TArg1, TArg2) Methods

AsyncInit

AsyncInitBaseT, TArg1, TArg2 Methods

The AsyncInitBaseT, TArg1, TArg2 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

AsyncInitBaseT, TArg1, TArg2 Class


AsyncInitBase(T, TArg1, TArg2).CreateAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2 Class


AsyncInitBase(T, TArg1, TArg2).InitAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2InitAsync Method

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2 Class


AsyncInitBase(T, TArg1, TArg2, TArg3) Class

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3 Class

Base class for asynchronously initialized types.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBaseT, TArg1, TArg2, TArg3
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2, TArg3

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class AsyncInitBase<T, TArg1, TArg2, TArg3> : IAsyncInit<TArg1, TArg2, TArg3>
where T : AsyncInitBase<T, TArg1, TArg2, TArg3>

Public MustInherit Class AsyncInitBase(Of T As AsyncInitBase(Of T, TArg1, TArg2, TArg3), TArg1, TArg2, TArg3)
    Implements IAsyncInit(Of TArg1, TArg2, TArg3)
generic<typename T, typename TArg1, typename TArg2, typename TArg3>
where T : AsyncInitBase<T, TArg1, TArg2, TArg3>
public ref class AsyncInitBase abstract : IAsyncInit<TArg1, TArg2, TArg3>
[<AbstractClassAttribute>]
type AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3 when 'T : AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3>> =
    class
        interface IAsyncInit<'TArg1, 'TArg2, 'TArg3>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.

The AsyncInitBaseT, TArg1, TArg2, TArg3 type exposes the following members.

Constructors
 | Name | Description
Protected method | AsyncInitBaseT, TArg1, TArg2, TArg3 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


AsyncInitBase(T, TArg1, TArg2, TArg3) Constructor

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected AsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
AsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> AsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3 Class


AsyncInitBase(T, TArg1, TArg2, TArg3) Methods

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3 Methods

The AsyncInitBaseT, TArg1, TArg2, TArg3 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3 Class


AsyncInitBase(T, TArg1, TArg2, TArg3).CreateAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3 Class


AsyncInitBase(T, TArg1, TArg2, TArg3).InitAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3InitAsync Method

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4) Class

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class

Base class for asynchronously initialized types.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4> : IAsyncInit<TArg1, TArg2, TArg3, TArg4>
where T : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4>

Public MustInherit Class AsyncInitBase(Of T As AsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4), TArg1, TArg2, TArg3, TArg4)
    Implements IAsyncInit(Of TArg1, TArg2, TArg3, TArg4)
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4>
where T : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4>
public ref class AsyncInitBase abstract : IAsyncInit<TArg1, TArg2, TArg3, TArg4>
[<AbstractClassAttribute>]
type AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4 when 'T : AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4>> =
    class
        interface IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.

The AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 type exposes the following members.

Constructors
 | Name | Description
Protected method | AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4) Constructor

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected AsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
AsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> AsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4) Methods

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Methods

The AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4).CreateAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4).InitAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4InitAsync Method

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5) Class

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class

Base class for asynchronously initialized types.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5> : IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5>
where T : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5>

Public MustInherit Class AsyncInitBase(Of T As AsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4, TArg5), TArg1, TArg2, TArg3, TArg4, TArg5)
    Implements IAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5)
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5>
where T : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5>
public ref class AsyncInitBase abstract : IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5>
[<AbstractClassAttribute>]
type AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5 when 'T : AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5>> =
    class
        interface IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.

The AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 type exposes the following members.

Constructors
 | Name | Description
Protected method | AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5) Constructor

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected AsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
AsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> AsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5) Methods

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Methods

The AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5).CreateAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5).InitAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5InitAsync Method

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Class

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class

Base class for asynchronously initialized types.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6> : IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
where T : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>

Public MustInherit Class AsyncInitBase(Of T As AsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6), TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)
    Implements IAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6>
where T : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
public ref class AsyncInitBase abstract : IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
[<AbstractClassAttribute>]
type AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6 when 'T : AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6>> =
    class
        interface IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.

The AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 type exposes the following members.

Constructors
 | Name | Description
Protected method | AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Constructor

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected AsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
AsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> AsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Methods

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Methods

The AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).CreateAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).InitAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6InitAsync Method

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Class

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class

Base class for asynchronously initialized types.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7> : IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>
where T : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>

Public MustInherit Class AsyncInitBase(Of T As AsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7), TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)
    Implements IAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6, typename TArg7>
where T : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>
public ref class AsyncInitBase abstract : IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>
[<AbstractClassAttribute>]
type AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7 when 'T : AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7>> =
    class
        interface IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.
TArg7
The type of the seventh initialization argument.

The AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 type exposes the following members.

Constructors
 | Name | Description
Protected method | AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Constructor

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected AsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
AsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> AsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Methods

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Methods

The AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).CreateAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    arg7 As TArg7
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        arg7 : 'TArg7 -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
arg7
Type: TArg7
The seventh initialization argument.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class


AsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).InitAsync Method

AsyncInit

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7InitAsync Method

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    arg7 As TArg7
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        arg7 : 'TArg7 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
arg7
Type: TArg7
The seventh initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class


CancelableAsyncInitBase(T) Class

AsyncInit

CancelableAsyncInitBaseT Class

Base class for asynchronously initialized types supporting cancellation.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBase T
Ditto.AsyncInitCancelableAsyncInitBaseT

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class CancelableAsyncInitBase<T> : AsyncInitBase<T>,
    ICancelableAsyncInit
where T : CancelableAsyncInitBase<T>

Public MustInherit Class CancelableAsyncInitBase(Of T As CancelableAsyncInitBase(Of T))
    Inherits AsyncInitBase(Of T)
    Implements ICancelableAsyncInit
generic<typename T>
where T : CancelableAsyncInitBase<T>
public ref class CancelableAsyncInitBase abstract : public AsyncInitBase<T>,
    ICancelableAsyncInit
[<AbstractClassAttribute>]
type CancelableAsyncInitBase<'T when 'T : CancelableAsyncInitBase<'T>> =
    class
        inherit AsyncInitBase<'T>
        interface ICancelableAsyncInit
    end

Type Parameters

T
The deriving type.

The CancelableAsyncInitBaseT type exposes the following members.

Constructors
 | Name | Description
Protected method | CancelableAsyncInitBaseT | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. (Overrides AsyncInitBaseTInitAsync.)
Protected method | InitAsync(CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


CancelableAsyncInitBase(T) Constructor

AsyncInit

CancelableAsyncInitBaseT Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected CancelableAsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
CancelableAsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> CancelableAsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

CancelableAsyncInitBaseT Class


CancelableAsyncInitBase(T) Methods

AsyncInit

CancelableAsyncInitBaseT Methods

The CancelableAsyncInitBaseT generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync | Asynchronously initializes an instance. (Overrides AsyncInitBaseTInitAsync.)
Protected method | InitAsync(CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

CancelableAsyncInitBaseT Class


CancelableAsyncInitBase(T).CreateAsync Method

AsyncInit

CancelableAsyncInitBaseTCreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    CancellationToken cancellationToken
)
Public Shared Function CreateAsync (
    cancellationToken As CancellationToken
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    CancellationToken cancellationToken
)
static member CreateAsync :
        cancellationToken : CancellationToken -> Task<'T>

Parameters

cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT Class


CancelableAsyncInitBase(T).InitAsync Method

AsyncInit

CancelableAsyncInitBaseTInitAsync Method

Overload List
 | Name | Description
Protected method | InitAsync | Asynchronously initializes an instance. (Overrides AsyncInitBaseTInitAsync.)
Protected method | InitAsync(CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Top
See Also

Reference

CancelableAsyncInitBaseT Class


CancelableAsyncInitBase(T).InitAsync Method

AsyncInit

CancelableAsyncInitBaseTInitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected override Task InitAsync()
Protected Overrides Function InitAsync As Task
protected:
virtual Task^ InitAsync() override
abstract InitAsync : unit -> Task
override InitAsync : unit -> Task

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT Class
InitAsync Overload


CancelableAsyncInitBase(T).InitAsync Method (CancellationToken)

AsyncInit

CancelableAsyncInitBaseTInitAsync Method (CancellationToken)

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    CancellationToken cancellationToken
)
Protected MustOverride Function InitAsync (
    cancellationToken As CancellationToken
) As Task
protected:
virtual Task^ InitAsync(
    CancellationToken cancellationToken
) abstract
abstract InitAsync :
        cancellationToken : CancellationToken -> Task

Parameters

cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg) Class

AsyncInit

CancelableAsyncInitBaseT, TArg Class

Base class for asynchronously initialized types supporting cancellation.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBase T, TArg
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class CancelableAsyncInitBase<T, TArg> : AsyncInitBase<T, TArg>,
    ICancelableAsyncInit<TArg>
where T : CancelableAsyncInitBase<T, TArg>

Public MustInherit Class CancelableAsyncInitBase(Of T As CancelableAsyncInitBase(Of T, TArg), TArg)
    Inherits AsyncInitBase(Of T, TArg)
    Implements ICancelableAsyncInit(Of TArg)
generic<typename T, typename TArg>
where T : CancelableAsyncInitBase<T, TArg>
public ref class CancelableAsyncInitBase abstract : public AsyncInitBase<T, TArg>,
    ICancelableAsyncInit<TArg>
[<AbstractClassAttribute>]
type CancelableAsyncInitBase<'T, 'TArg when 'T : CancelableAsyncInitBase<'T, 'TArg>> =
    class
        inherit AsyncInitBase<'T, 'TArg>
        interface ICancelableAsyncInit<'TArg>
    end

Type Parameters

T
The deriving type.
TArg
The type of the initialization argument.

The CancelableAsyncInitBaseT, TArg type exposes the following members.

Constructors
 | Name | Description
Protected method | CancelableAsyncInitBaseT, TArg | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArgInitAsync(TArg).)
Protected method | InitAsync(TArg, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


CancelableAsyncInitBase(T, TArg) Constructor

AsyncInit

CancelableAsyncInitBaseT, TArg Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected CancelableAsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
CancelableAsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> CancelableAsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

CancelableAsyncInitBaseT, TArg Class


CancelableAsyncInitBase(T, TArg) Methods

AsyncInit

CancelableAsyncInitBaseT, TArg Methods

The CancelableAsyncInitBaseT, TArg generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArgInitAsync(TArg).)
Protected method | InitAsync(TArg, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg Class


CancelableAsyncInitBase(T, TArg).CreateAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArgCreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg arg,
    CancellationToken cancellationToken
)
Public Shared Function CreateAsync (
    arg As TArg,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg arg,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg : 'TArg *
        cancellationToken : CancellationToken -> Task<'T>

Parameters

arg
Type: TArg
The initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg Class


CancelableAsyncInitBase(T, TArg).InitAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArgInitAsync Method

Overload List
 | Name | Description
Protected method | InitAsync(TArg) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArgInitAsync(TArg).)
Protected method | InitAsync(TArg, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg Class


CancelableAsyncInitBase(T, TArg).InitAsync Method (TArg)

AsyncInit

CancelableAsyncInitBaseT, TArgInitAsync Method (TArg)

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected override Task InitAsync(
    TArg arg
)
Protected Overrides Function InitAsync (
    arg As TArg
) As Task
protected:
virtual Task^ InitAsync(
    TArg arg
) override
abstract InitAsync :
        arg : 'TArg -> Task
override InitAsync :
        arg : 'TArg -> Task

Parameters

arg
Type: TArg
The initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg).InitAsync Method (TArg, CancellationToken)

AsyncInit

CancelableAsyncInitBaseT, TArgInitAsync Method (TArg, CancellationToken)

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg arg,
    CancellationToken cancellationToken
)
Protected MustOverride Function InitAsync (
    arg As TArg,
    cancellationToken As CancellationToken
) As Task
protected:
virtual Task^ InitAsync(
    TArg arg,
    CancellationToken cancellationToken
) abstract
abstract InitAsync :
        arg : 'TArg *
        cancellationToken : CancellationToken -> Task

Parameters

arg
Type: TArg
The initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2) Class

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2 Class

Base class for asynchronously initialized types supporting cancellation.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBase T, TArg1, TArg2
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class CancelableAsyncInitBase<T, TArg1, TArg2> : AsyncInitBase<T, TArg1, TArg2>,
    ICancelableAsyncInit<TArg1, TArg2>
where T : CancelableAsyncInitBase<T, TArg1, TArg2>

Public MustInherit Class CancelableAsyncInitBase(Of T As CancelableAsyncInitBase(Of T, TArg1, TArg2), TArg1, TArg2)
    Inherits AsyncInitBase(Of T, TArg1, TArg2)
    Implements ICancelableAsyncInit(Of TArg1, TArg2)
generic<typename T, typename TArg1, typename TArg2>
where T : CancelableAsyncInitBase<T, TArg1, TArg2>
public ref class CancelableAsyncInitBase abstract : public AsyncInitBase<T, TArg1, TArg2>,
    ICancelableAsyncInit<TArg1, TArg2>
[<AbstractClassAttribute>]
type CancelableAsyncInitBase<'T, 'TArg1, 'TArg2 when 'T : CancelableAsyncInitBase<'T, 'TArg1, 'TArg2>> =
    class
        inherit AsyncInitBase<'T, 'TArg1, 'TArg2>
        interface ICancelableAsyncInit<'TArg1, 'TArg2>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.

The CancelableAsyncInitBaseT, TArg1, TArg2 type exposes the following members.

Constructors
 | Name | Description
Protected method | CancelableAsyncInitBaseT, TArg1, TArg2 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2InitAsync(TArg1, TArg2).)
Protected method | InitAsync(TArg1, TArg2, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


CancelableAsyncInitBase(T, TArg1, TArg2) Constructor

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected CancelableAsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
CancelableAsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> CancelableAsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2 Class


CancelableAsyncInitBase(T, TArg1, TArg2) Methods

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2 Methods

The CancelableAsyncInitBaseT, TArg1, TArg2 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2InitAsync(TArg1, TArg2).)
Protected method | InitAsync(TArg1, TArg2, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2 Class


CancelableAsyncInitBase(T, TArg1, TArg2).CreateAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    CancellationToken cancellationToken
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        cancellationToken : CancellationToken -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2 Class


CancelableAsyncInitBase(T, TArg1, TArg2).InitAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2InitAsync Method

Overload List
 | Name | Description
Protected method | InitAsync(TArg1, TArg2) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2InitAsync(TArg1, TArg2).)
Protected method | InitAsync(TArg1, TArg2, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2 Class


CancelableAsyncInitBase(T, TArg1, TArg2).InitAsync Method (TArg1, TArg2)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2InitAsync Method (TArg1, TArg2)

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected override Task InitAsync(
    TArg1 arg1,
    TArg2 arg2
)
Protected Overrides Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2
) override
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 -> Task
override InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2).InitAsync Method (TArg1, TArg2, CancellationToken)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2InitAsync Method (TArg1, TArg2, CancellationToken)

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    CancellationToken cancellationToken
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    cancellationToken As CancellationToken
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    CancellationToken cancellationToken
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3) Class

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 Class

Base class for asynchronously initialized types supporting cancellation.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBase T, TArg1, TArg2, TArg3
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2, TArg3

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class CancelableAsyncInitBase<T, TArg1, TArg2, TArg3> : AsyncInitBase<T, TArg1, TArg2, TArg3>,
    ICancelableAsyncInit<TArg1, TArg2, TArg3>
where T : CancelableAsyncInitBase<T, TArg1, TArg2, TArg3>

Public MustInherit Class CancelableAsyncInitBase(Of T As CancelableAsyncInitBase(Of T, TArg1, TArg2, TArg3), TArg1, TArg2, TArg3)
    Inherits AsyncInitBase(Of T, TArg1, TArg2, TArg3)
    Implements ICancelableAsyncInit(Of TArg1, TArg2, TArg3)
generic<typename T, typename TArg1, typename TArg2, typename TArg3>
where T : CancelableAsyncInitBase<T, TArg1, TArg2, TArg3>
public ref class CancelableAsyncInitBase abstract : public AsyncInitBase<T, TArg1, TArg2, TArg3>,
    ICancelableAsyncInit<TArg1, TArg2, TArg3>
[<AbstractClassAttribute>]
type CancelableAsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3 when 'T : CancelableAsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3>> =
    class
        inherit AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3>
        interface ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.

The CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 type exposes the following members.

Constructors
 | Name | Description
Protected method | CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2, TArg3) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3InitAsync(TArg1, TArg2, TArg3).)
Protected method | InitAsync(TArg1, TArg2, TArg3, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3) Constructor

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected CancelableAsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
CancelableAsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> CancelableAsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3) Methods

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 Methods

The CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2, TArg3) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3InitAsync(TArg1, TArg2, TArg3).)
Protected method | InitAsync(TArg1, TArg2, TArg3, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3).CreateAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    CancellationToken cancellationToken
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        cancellationToken : CancellationToken -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3).InitAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3InitAsync Method

Overload List
 | Name | Description
Protected method | InitAsync(TArg1, TArg2, TArg3) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3InitAsync(TArg1, TArg2, TArg3).)
Protected method | InitAsync(TArg1, TArg2, TArg3, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3).InitAsync Method (TArg1, TArg2, TArg3)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3InitAsync Method (TArg1, TArg2, TArg3)

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected override Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3
)
Protected Overrides Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3
) override
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 -> Task
override InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3).InitAsync Method (TArg1, TArg2, TArg3, CancellationToken)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3InitAsync Method (TArg1, TArg2, TArg3, CancellationToken)

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    CancellationToken cancellationToken
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    cancellationToken As CancellationToken
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    CancellationToken cancellationToken
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4) Class

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class

Base class for asynchronously initialized types supporting cancellation.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBase T, TArg1, TArg2, TArg3, TArg4
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4> : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4>,
    ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4>
where T : CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4>

Public MustInherit Class CancelableAsyncInitBase(Of T As CancelableAsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4), TArg1, TArg2, TArg3, TArg4)
    Inherits AsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4)
    Implements ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4)
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4>
where T : CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4>
public ref class CancelableAsyncInitBase abstract : public AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4>,
    ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4>
[<AbstractClassAttribute>]
type CancelableAsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4 when 'T : CancelableAsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4>> =
    class
        inherit AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4>
        interface ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.

The CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 type exposes the following members.

Constructors
 | Name | Description
Protected method | CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4InitAsync(TArg1, TArg2, TArg3, TArg4).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4) Constructor

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected CancelableAsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
CancelableAsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> CancelableAsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4) Methods

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Methods

The CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4InitAsync(TArg1, TArg2, TArg3, TArg4).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4).CreateAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    CancellationToken cancellationToken
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        cancellationToken : CancellationToken -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4).InitAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4InitAsync Method

Overload List
 | Name | Description
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4InitAsync(TArg1, TArg2, TArg3, TArg4).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4).InitAsync Method (TArg1, TArg2, TArg3, TArg4)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4InitAsync Method (TArg1, TArg2, TArg3, TArg4)

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected override Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4
)
Protected Overrides Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4
) override
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 -> Task
override InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4).InitAsync Method (TArg1, TArg2, TArg3, TArg4, CancellationToken)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4InitAsync Method (TArg1, TArg2, TArg3, TArg4, CancellationToken)

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    CancellationToken cancellationToken
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    cancellationToken As CancellationToken
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    CancellationToken cancellationToken
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5) Class

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class

Base class for asynchronously initialized types supporting cancellation.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBase T, TArg1, TArg2, TArg3, TArg4, TArg5
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5> : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5>,
    ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5>
where T : CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5>

Public MustInherit Class CancelableAsyncInitBase(Of T As CancelableAsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4, TArg5), TArg1, TArg2, TArg3, TArg4, TArg5)
    Inherits AsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4, TArg5)
    Implements ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5)
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5>
where T : CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5>
public ref class CancelableAsyncInitBase abstract : public AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5>,
    ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5>
[<AbstractClassAttribute>]
type CancelableAsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5 when 'T : CancelableAsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5>> =
    class
        inherit AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5>
        interface ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.

The CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 type exposes the following members.

Constructors
 | Name | Description
Protected method | CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5) Constructor

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected CancelableAsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
CancelableAsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> CancelableAsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5) Methods

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Methods

The CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5).CreateAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    CancellationToken cancellationToken
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        cancellationToken : CancellationToken -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5).InitAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5InitAsync Method

Overload List
 | Name | Description
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5).InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5)

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected override Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5
)
Protected Overrides Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5
) override
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 -> Task
override InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5).InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5, CancellationToken)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5, CancellationToken)

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    CancellationToken cancellationToken
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    cancellationToken As CancellationToken
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    CancellationToken cancellationToken
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Class

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class

Base class for asynchronously initialized types supporting cancellation.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBase T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6> : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>,
    ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
where T : CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>

Public MustInherit Class CancelableAsyncInitBase(Of T As CancelableAsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6), TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)
    Inherits AsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)
    Implements ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6>
where T : CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
public ref class CancelableAsyncInitBase abstract : public AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>,
    ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
[<AbstractClassAttribute>]
type CancelableAsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6 when 'T : CancelableAsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6>> =
    class
        inherit AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6>
        interface ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.

The CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 type exposes the following members.

Constructors
 | Name | Description
Protected method | CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Constructor

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected CancelableAsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
CancelableAsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> CancelableAsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Methods

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Methods

The CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).CreateAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    CancellationToken cancellationToken
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        cancellationToken : CancellationToken -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).InitAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6InitAsync Method

Overload List
 | Name | Description
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected override Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6
)
Protected Overrides Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6
) override
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 -> Task
override InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, CancellationToken)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, CancellationToken)

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    CancellationToken cancellationToken
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    cancellationToken As CancellationToken
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    CancellationToken cancellationToken
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Class

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class

Base class for asynchronously initialized types supporting cancellation.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInitAsyncInitBase T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7
Ditto.AsyncInitCancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public abstract class CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7> : AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>,
    ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>
where T : CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>

Public MustInherit Class CancelableAsyncInitBase(Of T As CancelableAsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7), TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)
    Inherits AsyncInitBase(Of T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)
    Implements ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)
generic<typename T, typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6, typename TArg7>
where T : CancelableAsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>
public ref class CancelableAsyncInitBase abstract : public AsyncInitBase<T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>,
    ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>
[<AbstractClassAttribute>]
type CancelableAsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7 when 'T : CancelableAsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7>> =
    class
        inherit AsyncInitBase<'T, 'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7>
        interface ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7>
    end

Type Parameters

T
The deriving type.
TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.
TArg7
The type of the seventh initialization argument.

The CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 type exposes the following members.

Constructors
 | Name | Description
Protected method | CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 | Deriving types should define a private parameterless constructor.
Top
Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Derive from an AsyncInit Base Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Constructor

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Constructor

Deriving types should define a private parameterless constructor.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected CancelableAsyncInitBase(
    Object dummy
)
Protected Sub New (
    dummy As Object
)
protected:
CancelableAsyncInitBase(
    Object^ dummy
)
new :
        dummy : Object -> CancelableAsyncInitBase

Parameters

dummy
Type: SystemObject
Dummy parameter (safe to pass null).
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Methods

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Methods

The CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 generic type exposes the following members.

Methods
 | Name | Description
 | CreateAsync | Asynchronously creates and initializes an instance.
Public method | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method | GetHashCode | Serves as the default hash function. (Inherited from Object.)
Public method | GetType | Gets the Type of the current instance. (Inherited from Object.)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Protected method | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.)
Public method | ToString | Returns a string that represents the current object. (Inherited from Object.)
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).CreateAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7CreateAsync Method

Asynchronously creates and initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static Task<T> CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7,
    CancellationToken cancellationToken
)
Public Shared Function CreateAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    arg7 As TArg7,
    cancellationToken As CancellationToken
) As Task(Of T)
public:
static Task<T>^ CreateAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7,
    CancellationToken cancellationToken
)
static member CreateAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        arg7 : 'TArg7 *
        cancellationToken : CancellationToken -> Task<'T>

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
arg7
Type: TArg7
The seventh initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task T
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).InitAsync Method

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7InitAsync Method

Overload List
 | Name | Description
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) | Asynchronously initializes an instance. (Overrides AsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).)
Protected method | InitAsync(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, CancellationToken) | Asynchronously initializes an instance. Overridden by the deriving type.
Top
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected override Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7
)
Protected Overrides Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    arg7 As TArg7
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7
) override
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        arg7 : 'TArg7 -> Task
override InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        arg7 : 'TArg7 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
arg7
Type: TArg7
The seventh initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class
InitAsync Overload


CancelableAsyncInitBase(T, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, CancellationToken)

AsyncInit

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7InitAsync Method (TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, CancellationToken)

Asynchronously initializes an instance. Overridden by the deriving type.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
protected abstract Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7,
    CancellationToken cancellationToken
)
Protected MustOverride Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    arg7 As TArg7,
    cancellationToken As CancellationToken
) As Task
protected:
virtual Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7,
    CancellationToken cancellationToken
) abstract
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        arg7 : 'TArg7 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
arg7
Type: TArg7
The seventh initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

CancelableAsyncInitBaseT, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Class
InitAsync Overload


IAsyncInit Interface

Interface for asynchronously initialized types.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface IAsyncInit
Public Interface IAsyncInit
public interface class IAsyncInit
type IAsyncInit =  interface end

The IAsyncInit type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


IAsyncInit Methods

The IAsyncInit type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

IAsyncInit Interface


IAsyncInit.InitAsync Method

AsyncInit

IAsyncInitInitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync()
Function InitAsync As Task
Task^ InitAsync()
abstract InitAsync : unit -> Task

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

IAsyncInit Interface


IAsyncInit(TArg) Interface

AsyncInit

IAsyncInitTArg Interface

Interface for asynchronously initialized types.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface IAsyncInit<TArg>

Public Interface IAsyncInit(Of TArg)
generic<typename TArg>
public interface class IAsyncInit
type IAsyncInit<'TArg> =  interface end

Type Parameters

TArg
The type of the initialization argument.

The IAsyncInitTArg type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


IAsyncInit(TArg) Methods

AsyncInit

IAsyncInitTArg Methods

The IAsyncInitTArg generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

IAsyncInitTArg Interface


IAsyncInit(TArg).InitAsync Method

AsyncInit

IAsyncInitTArgInitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg arg
)
Function InitAsync (
    arg As TArg
) As Task
Task^ InitAsync(
    TArg arg
)
abstract InitAsync :
        arg : 'TArg -> Task

Parameters

arg
Type: TArg
The initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

IAsyncInitTArg Interface


IAsyncInit(TArg1, TArg2) Interface

AsyncInit

IAsyncInitTArg1, TArg2 Interface

Interface for asynchronously initialized types.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface IAsyncInit<TArg1, TArg2>

Public Interface IAsyncInit(Of TArg1, TArg2)
generic<typename TArg1, typename TArg2>
public interface class IAsyncInit
type IAsyncInit<'TArg1, 'TArg2> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.

The IAsyncInitTArg1, TArg2 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


IAsyncInit(TArg1, TArg2) Methods

AsyncInit

IAsyncInitTArg1, TArg2 Methods

The IAsyncInitTArg1, TArg2 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

IAsyncInitTArg1, TArg2 Interface


IAsyncInit(TArg1, TArg2).InitAsync Method

AsyncInit

IAsyncInitTArg1, TArg2InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

IAsyncInitTArg1, TArg2 Interface


IAsyncInit(TArg1, TArg2, TArg3) Interface

AsyncInit

IAsyncInitTArg1, TArg2, TArg3 Interface

Interface for asynchronously initialized types.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface IAsyncInit<TArg1, TArg2, TArg3>

Public Interface IAsyncInit(Of TArg1, TArg2, TArg3)
generic<typename TArg1, typename TArg2, typename TArg3>
public interface class IAsyncInit
type IAsyncInit<'TArg1, 'TArg2, 'TArg3> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.

The IAsyncInitTArg1, TArg2, TArg3 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


IAsyncInit(TArg1, TArg2, TArg3) Methods

AsyncInit

IAsyncInitTArg1, TArg2, TArg3 Methods

The IAsyncInitTArg1, TArg2, TArg3 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

IAsyncInitTArg1, TArg2, TArg3 Interface


IAsyncInit(TArg1, TArg2, TArg3).InitAsync Method

AsyncInit

IAsyncInitTArg1, TArg2, TArg3InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

IAsyncInitTArg1, TArg2, TArg3 Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4) Interface

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4 Interface

Interface for asynchronously initialized types.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface IAsyncInit<TArg1, TArg2, TArg3, TArg4>

Public Interface IAsyncInit(Of TArg1, TArg2, TArg3, TArg4)
generic<typename TArg1, typename TArg2, typename TArg3, typename TArg4>
public interface class IAsyncInit
type IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.

The IAsyncInitTArg1, TArg2, TArg3, TArg4 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4) Methods

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4 Methods

The IAsyncInitTArg1, TArg2, TArg3, TArg4 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

IAsyncInitTArg1, TArg2, TArg3, TArg4 Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4).InitAsync Method

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

IAsyncInitTArg1, TArg2, TArg3, TArg4 Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5) Interface

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 Interface

Interface for asynchronously initialized types.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5>

Public Interface IAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5)
generic<typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5>
public interface class IAsyncInit
type IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.

The IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5) Methods

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 Methods

The IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5).InitAsync Method

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Interface

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Interface

Interface for asynchronously initialized types.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>

Public Interface IAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)
generic<typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6>
public interface class IAsyncInit
type IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.

The IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Methods

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Methods

The IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).InitAsync Method

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Interface

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Interface

Interface for asynchronously initialized types.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface IAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>

Public Interface IAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)
generic<typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6, typename TArg7>
public interface class IAsyncInit
type IAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.
TArg7
The type of the seventh initialization argument.

The IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Methods

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Methods

The IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Interface


IAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).InitAsync Method

AsyncInit

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    arg7 As TArg7
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        arg7 : 'TArg7 -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
arg7
Type: TArg7
The seventh initialization argument.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

IAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Interface


ICancelableAsyncInit Interface

Interface for asynchronously initialized types supporting cancellation.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface ICancelableAsyncInit
Public Interface ICancelableAsyncInit
public interface class ICancelableAsyncInit
type ICancelableAsyncInit =  interface end

The ICancelableAsyncInit type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


ICancelableAsyncInit Methods

The ICancelableAsyncInit type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

ICancelableAsyncInit Interface


ICancelableAsyncInit.InitAsync Method

AsyncInit

ICancelableAsyncInitInitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    CancellationToken cancellationToken
)
Function InitAsync (
    cancellationToken As CancellationToken
) As Task
Task^ InitAsync(
    CancellationToken cancellationToken
)
abstract InitAsync :
        cancellationToken : CancellationToken -> Task

Parameters

cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

ICancelableAsyncInit Interface


ICancelableAsyncInit(TArg) Interface

AsyncInit

ICancelableAsyncInitTArg Interface

Interface for asynchronously initialized types supporting cancellation.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface ICancelableAsyncInit<TArg>

Public Interface ICancelableAsyncInit(Of TArg)
generic<typename TArg>
public interface class ICancelableAsyncInit
type ICancelableAsyncInit<'TArg> =  interface end

Type Parameters

TArg
The type of the initialization argument.

The ICancelableAsyncInitTArg type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


ICancelableAsyncInit(TArg) Methods

AsyncInit

ICancelableAsyncInitTArg Methods

The ICancelableAsyncInitTArg generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

ICancelableAsyncInitTArg Interface


ICancelableAsyncInit(TArg).InitAsync Method

AsyncInit

ICancelableAsyncInitTArgInitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg arg,
    CancellationToken cancellationToken
)
Function InitAsync (
    arg As TArg,
    cancellationToken As CancellationToken
) As Task
Task^ InitAsync(
    TArg arg,
    CancellationToken cancellationToken
)
abstract InitAsync :
        arg : 'TArg *
        cancellationToken : CancellationToken -> Task

Parameters

arg
Type: TArg
The initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

ICancelableAsyncInitTArg Interface


ICancelableAsyncInit(TArg1, TArg2) Interface

AsyncInit

ICancelableAsyncInitTArg1, TArg2 Interface

Interface for asynchronously initialized types supporting cancellation.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface ICancelableAsyncInit<TArg1, TArg2>

Public Interface ICancelableAsyncInit(Of TArg1, TArg2)
generic<typename TArg1, typename TArg2>
public interface class ICancelableAsyncInit
type ICancelableAsyncInit<'TArg1, 'TArg2> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.

The ICancelableAsyncInitTArg1, TArg2 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


ICancelableAsyncInit(TArg1, TArg2) Methods

AsyncInit

ICancelableAsyncInitTArg1, TArg2 Methods

The ICancelableAsyncInitTArg1, TArg2 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

ICancelableAsyncInitTArg1, TArg2 Interface


ICancelableAsyncInit(TArg1, TArg2).InitAsync Method

AsyncInit

ICancelableAsyncInitTArg1, TArg2InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    CancellationToken cancellationToken
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    cancellationToken As CancellationToken
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    CancellationToken cancellationToken
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

ICancelableAsyncInitTArg1, TArg2 Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3) Interface

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3 Interface

Interface for asynchronously initialized types supporting cancellation.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface ICancelableAsyncInit<TArg1, TArg2, TArg3>

Public Interface ICancelableAsyncInit(Of TArg1, TArg2, TArg3)
generic<typename TArg1, typename TArg2, typename TArg3>
public interface class ICancelableAsyncInit
type ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.

The ICancelableAsyncInitTArg1, TArg2, TArg3 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3) Methods

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3 Methods

The ICancelableAsyncInitTArg1, TArg2, TArg3 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

ICancelableAsyncInitTArg1, TArg2, TArg3 Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3).InitAsync Method

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    CancellationToken cancellationToken
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    cancellationToken As CancellationToken
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    CancellationToken cancellationToken
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

ICancelableAsyncInitTArg1, TArg2, TArg3 Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4) Interface

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4 Interface

Interface for asynchronously initialized types supporting cancellation.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4>

Public Interface ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4)
generic<typename TArg1, typename TArg2, typename TArg3, typename TArg4>
public interface class ICancelableAsyncInit
type ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.

The ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4) Methods

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4 Methods

The ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4 Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4).InitAsync Method

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    CancellationToken cancellationToken
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    cancellationToken As CancellationToken
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    CancellationToken cancellationToken
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4 Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5) Interface

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 Interface

Interface for asynchronously initialized types supporting cancellation.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5>

Public Interface ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5)
generic<typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5>
public interface class ICancelableAsyncInit
type ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.

The ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5) Methods

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 Methods

The ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5).InitAsync Method

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    CancellationToken cancellationToken
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    cancellationToken As CancellationToken
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    CancellationToken cancellationToken
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5 Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Interface

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Interface

Interface for asynchronously initialized types supporting cancellation.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>

Public Interface ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)
generic<typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6>
public interface class ICancelableAsyncInit
type ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.

The ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6) Methods

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Methods

The ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6).InitAsync Method

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    CancellationToken cancellationToken
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    cancellationToken As CancellationToken
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    CancellationToken cancellationToken
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6 Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Interface

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Interface

Interface for asynchronously initialized types supporting cancellation.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public interface ICancelableAsyncInit<TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7>

Public Interface ICancelableAsyncInit(Of TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)
generic<typename TArg1, typename TArg2, typename TArg3, typename TArg4, typename TArg5, typename TArg6, typename TArg7>
public interface class ICancelableAsyncInit
type ICancelableAsyncInit<'TArg1, 'TArg2, 'TArg3, 'TArg4, 'TArg5, 'TArg6, 'TArg7> =  interface end

Type Parameters

TArg1
The type of the first initialization argument.
TArg2
The type of the second initialization argument.
TArg3
The type of the third initialization argument.
TArg4
The type of the fourth initialization argument.
TArg5
The type of the fifth initialization argument.
TArg6
The type of the sixth initialization argument.
TArg7
The type of the seventh initialization argument.

The ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

Ditto.AsyncInit Namespace

Other Resources

How To Implement an AsyncInit Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7) Methods

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Methods

The ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 generic type exposes the following members.

Methods
 | Name | Description
Public method | InitAsync | Asynchronously initializes an instance.
Top
See Also

Reference

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Interface


ICancelableAsyncInit(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7).InitAsync Method

AsyncInit

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7InitAsync Method

Asynchronously initializes an instance.

Namespace: Ditto.AsyncInit
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
Task InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7,
    CancellationToken cancellationToken
)
Function InitAsync (
    arg1 As TArg1,
    arg2 As TArg2,
    arg3 As TArg3,
    arg4 As TArg4,
    arg5 As TArg5,
    arg6 As TArg6,
    arg7 As TArg7,
    cancellationToken As CancellationToken
) As Task
Task^ InitAsync(
    TArg1 arg1,
    TArg2 arg2,
    TArg3 arg3,
    TArg4 arg4,
    TArg5 arg5,
    TArg6 arg6,
    TArg7 arg7,
    CancellationToken cancellationToken
)
abstract InitAsync :
        arg1 : 'TArg1 *
        arg2 : 'TArg2 *
        arg3 : 'TArg3 *
        arg4 : 'TArg4 *
        arg5 : 'TArg5 *
        arg6 : 'TArg6 *
        arg7 : 'TArg7 *
        cancellationToken : CancellationToken -> Task

Parameters

arg1
Type: TArg1
The first initialization argument.
arg2
Type: TArg2
The second initialization argument.
arg3
Type: TArg3
The third initialization argument.
arg4
Type: TArg4
The fourth initialization argument.
arg5
Type: TArg5
The fifth initialization argument.
arg6
Type: TArg6
The sixth initialization argument.
arg7
Type: TArg7
The seventh initialization argument.
cancellationToken
Type: System.ThreadingCancellationToken
Cancellation token.

Return Value

Type: Task
A Task capturing the initialization.
See Also

Reference

ICancelableAsyncInitTArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7 Interface


Ditto.AsyncInit.Internal Namespace

Classes used internally by AsyncInit components.
Classes
 | Class | Description
Public class | Utilities | Provides utility methods for AsyncActivator.


Utilities Class

Provides utility methods for AsyncActivator.
Inheritance Hierarchy
SystemObject
Ditto.AsyncInit.InternalUtilities

Namespace: Ditto.AsyncInit.Internal
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static class Utilities
Public NotInheritable Class Utilities
public ref class Utilities abstract sealed
[<AbstractClassAttribute>]
[<SealedAttribute>]
type Utilities =  class end

The Utilities type exposes the following members.

Methods
Name | Description
CreateInstanceT | Creates an instance of the specified type.
Top
See Also

Reference

Ditto.AsyncInit.Internal Namespace


Utilities Methods

The Utilities type exposes the following members.

Methods
Name | Description
CreateInstanceT | Creates an instance of the specified type.
Top
See Also

Reference

Utilities Class
Ditto.AsyncInit.Internal Namespace


Utilities.CreateInstance(T) Method

AsyncInit

UtilitiesCreateInstanceT Method

Creates an instance of the specified type.

Namespace: Ditto.AsyncInit.Internal
Assembly: Ditto.AsyncInit (in Ditto.AsyncInit.dll) Version: 1.5.0.2281
Syntax
C#
VB
C++
F#
Copy
public static T CreateInstance<T>()

Public Shared Function CreateInstance(Of T) As T
public:
generic<typename T>
static T CreateInstance()
static member CreateInstance : unit -> 'T

Type Parameters

T
The type to create.

Return Value

Type: T
A reference to the newly created object.
See Also

Reference

Utilities Class
Ditto.AsyncInit.Internal Namespace


AsyncInit How Tos

The topics in this section detail some of the AsyncInit usage scenarios.

  • How To Install AsyncInit
  • How To Derive from an AsyncInit Base Class
  • How To Implement an AsyncInit Interface
  • How To Use AsyncInit on Silverlight
See Also

Other Resources

Source Code


How To Install AsyncInit

This topic details the steps necessary for adding an AsyncInit reference to a project.

  • Enter the following command into the Package Manager Console:

    Copy
    Install-Package Ditto.AsyncInit

    If the solution contains multiple projects, the command above should be followed by the project name.

    Alternatively, you may use the Manage NuGet Packages window. Make sure the package ID is Ditto.AsyncInit.

See Also

Other Resources

Ditto.AsyncInit on NuGet Gallery
AsyncInit How Tos


How To Derive from an AsyncInit Base Class

This topic details the steps necessary for defining a type that derives from an AsyncInit base class.

  1. Determine the types of the initialization arguments (if any), e.g. IProgress<long>.

  2. Import the AsyncInit namespace:

    C#
    Copy
    using Ditto.AsyncInit;

  3. Derive from the corresponding AsyncInitBase or CancelableAsyncInitBase(recommended), specifying your class as the first generic type argument:

    C#
    Copy
    class UniversalAnswerService : CancelableAsyncInitBase<UniversalAnswerService, IProgress<long>>
{
    public int Answer { get; private set; }
}

  4. Implement a private parameterless constructor, passing null as parameter to base:

    C#
    Copy
    private UniversalAnswerService()
: base(null)
{
}

  5. Override InitAsync():

    C#
    Copy
    protected override async Task InitAsync(IProgress<long> progress, CancellationToken cancellationToken)
{
    await Task.Delay(TimeSpan.FromDays(7500000 * 365.25), cancellationToken);
    Answer = 42;
}
Your class may now be consumed asynchronously:
Example
C#
Copy
var service = await UniversalAnswerService.CreateAsync(progress, cancellationToken);
var answer = service.Answer;
See Also

Other Resources

How To Implement an AsyncInit Interface
AsyncInit How Tos


How To Implement an AsyncInit Interface

This topic details the steps necessary for defining a type that implements an AsyncInit interface.

In some cases, a type cannot be derived from a particular AsyncInitBase or CancelableAsyncInitBase, e.g. when it must derive from a predefined base class. In such scenarios IAsyncInit and ICancelableAsyncInit should be used instead.

  1. Determine the types of the initialization arguments (if any), e.g. IProgress<long>.

  2. Import the AsyncInit namespace:

    C#
    Copy
    using Ditto.AsyncInit;

  3. Implement the corresponding IAsyncInit or ICancelableAsyncInit(recommended):

    C#
    Copy
    class UniversalAnswerService : ICancelableAsyncInit<IProgress<long>>
{
    public int Answer { get; private set; }

    async Task ICancelableAsyncInit<IProgress<long>>.InitAsync(IProgress<long> progress, CancellationToken cancellationToken)
    {
        await Task.Delay(TimeSpan.FromDays(7500000 * 365.25), cancellationToken);
        Answer = 42;
    }
}

  4. Implement a private parameterless constructor:

    C#
    Copy
    private UniversalAnswerService()
{
}

  5. Implement a CreateAsync() method:

    C#
    Copy
    public async Task<UniversalAnswerService> CreateAsync(IProgress<long> progress, CancellationToken cancellationToken)
{
    return AsyncActivator.CreateAsync<UniversalAnswerService, IProgress<long>>(progress, cancellationToken);
}
Your class may now be consumed asynchronously:
Example
C#
Copy
var service = await UniversalAnswerService.CreateAsync(progress, cancellationToken);
var answer = service.Answer;
See Also

Other Resources

How To Derive from an AsyncInit Base Class
AsyncInit How Tos


How To Use AsyncInit on Silverlight

This topic details the steps necessary for creating asynchronously initialized types with AsyncInit on Silverlight 4 and 5.

Silverlight 4 and 5 won't allow anyone other than the declaring type access to private members, requiring a slightly different procedure.

  1. Declare an internal (rather than private) constructor:

    C#
    Copy
    internal UniversalAnswerService()
: base(null)
{
}

  2. Expose it to Ditto.AsyncInit by adding the following attribute to Properties\AssemblyInfo.cs:

    C#
    Copy
    [assembly: InternalsVisibleTo("Ditto.AsyncInit")]
Your class may now be consumed asynchronously:
Example
C#
Copy
var service = await UniversalAnswerService.CreateAsync(progress, cancellationToken);
var answer = service.Answer;
Since all asynchronously initialized types must declare internal constructors (on Silverlight), it is advisable to keep them in an assembly of their own, in order to prevent others from inadvertently accessing uninitialized instances thereof.
See Also

Other Resources

Blog post detailing the issue
AsyncInit How Tos


AsyncInit Miscellaneous Topics

The topics in this section contain articles on miscellaneous aspects of AsyncInit design and implementation.

  • The NAG Constructor Pattern


The NAG Constructor Pattern

This topic contains an article describing a design pattern first introduced in AsyncInit.

This topic contains the following sections:

  • The Problem
  • The Solution
  • The Name
  • See Also
The Problem

A base class may occasionally require subclasses to limit the visibility of their constructor(s). Common example:

C#
Copy
abstract class Singleton<T>
    where T : Singleton<T>
{
    public static readonly T Instance;

    static Singleton()
    {
        Instance = new System.Lazy<T>(CreateInstance).Value;
    }

    private static T CreateInstance()
    {
        return (T)System.Activator.CreateInstance(typeof(T), true);
    }
}

The true bit instructs Activator to look for a non-public constructor, but not to require it. This means that a subclass could easily forgo the private constructor (by e.g. declaring no constructor at all), which would defeat the whole purpose of it trying to be a singleton.

Ideally, we would like to enforce this at compilation time. C# affords us the new constraint:

C#
Copy
abstract class NotSingleton<T>
    where T : NotSingleton<T>, new()
{
    //...
}
but not its opposite. Something along the lines of
C#
Copy
abstract class Singleton<T>
    where T : Singleton<T>, ~new()
{
    //...
}
would be great, but currently results in a compilation error for the wrong class.

The Solution

AsyncInitBase<T>, a class not too dissimilar from the above Singleton<T>, contains the following code:

C#
Copy
/// <summary>
/// Deriving types should define a private parameterless constructor.
/// </summary>
/// <param name="dummy">Dummy parameter (safe to pass <c>null</c>).</param>
protected AsyncInitBase(object dummy)
{
}

Its goal is to enforce implementors to define a constructor of their own, with the hope that it indeed be a private one.

The Name
Null Argument Guidance Constructor, or NAG Constructor, was the name originally coined for this concept. We believe it best encompasses both the means and (in its acronym form) the end.
See Also

Other Resources

The original blog post
AsyncInit


AsyncInit Version History

The topics in this section describe the various changes made to AsyncInit over the life of the project.

Select a version below to see a detailed description of its changes.

Version 1.5.0
Fixed assembly versions
Updated documentation
Version 1.4.3
Updated Project Site in NuGet package
Minor documentation updates
Version 1.4.2
Updated Project Site in NuGet package
Version 1.4.1
Fixed broken link
Version 1.4.0
Reworked documentation
Version 1.3.0
Added HTML Help
Version 1.2.0
Fixed static constructor bug
Version 1.1.0
Added Silverlight 4 and Windows Phone 7.1 support
Version 1.0.4
Clarified usage example
Version 1.0.3
Clarified usage example
Version 1.0.2
Fixed dependencies
Version 1.0.0
Initial stable release
See Also

Other Resources

Ditto.AsyncInit on NuGet Gallery
Welcome to AsyncInit


Version 1.5.0

Version 1.5.0 was released on November 15 2014.

Changes in This Release
  • Fixed assembly versions
  • Updated documentation
See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.4.3

Version 1.4.3 was released on November 14 2014.

Changes in This Release
  • Updated Project Site in NuGet package
  • Minor documentation updates
See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.4.2

Version 1.4.2 was released on November 13 2015.

Changes in This Release

  • Updated Project Site in NuGet package

See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.4.1

Version 1.4.1 was released on November 13 2015.

Changes in This Release

  • Fixed broken link

See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.4.0

Version 1.4.0 was released on November 13 2015.

Changes in This Release
  • Fixed wrong <value>s
  • Rewrote README.txt
  • Welcome to AsyncInit
    • Merged the introduction and Supported Versions into Introduction
    • Added Getting Started
    • Added Miscellanea
    • Added Aknowledgements
  • AsyncInit How Tos
    • Split Basics into How To Install AsyncInit and How To Derive from an AsyncInit Base Class
    • Added How To Implement an AsyncInit Interface
    • Removed Unity topic
    • Separated examples from procedures
    • Removed wiki link
    • Renamed from How To Use
  • AsyncInit Miscellaneous Topics
    • Added section
    • Added The NAG Constructor Pattern
  • AsyncInit Version History
    • Added NuGet Gallery links to the orientation topic and to the version topics
    • Added deprecated version notes
    • Restructured the version list as a definition table
  • Apache License Version 2.0
    • Fixed markup
See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.3.0

Version 1.3.0 was released on November 13 2015.

Changes in This Release

  • Added HTML Help

See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.2.0

Version 1.2.0 was released on November 12 2015.

Changes in This Release

  • Fixed static constructor bug

See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.1.0

Version 1.1.0 was released on January 20 2015.

Note: This version is deprecated and should not be used.

Changes in This Release

  • Added Silverlight 4 and Windows Phone 7.1 support

See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.0.4

Version 1.0.4 was released on January 01 2015.

Note: This version is deprecated and should not be used.

Changes in This Release

  • Clarified usage example

See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.0.3

Version 1.0.3 was released on December 31 2014.

Note: This version is deprecated and should not be used.

Changes in This Release

  • Clarified usage example

See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.0.2

Version 1.0.2 was released on December 29 2014.

Note: This version is deprecated and should not be used.

Changes in This Release

  • Fixed dependencies

See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Version 1.0.0

Version 1.0.0 was released on December 29 2014.

Note: This version is deprecated and should not be used.

Changes in This Release

  • Initial stable release

See Also

Other Resources

This version on NuGet Gallery
AsyncInit Version History


Apache License Version 2.0

January 2004

http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions
"License"
shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.
"Licensor"
shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.
"Legal Entity"
shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your")
shall mean an individual or Legal Entity exercising permissions granted by this License.
"Source" form
shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.
"Object" form
shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
"Work"
shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).
"Derivative Works"
shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
"Contribution"
shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."
"Contributor"
shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.
2. Grant of Copyright License

Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.

3. Grant of Patent License

Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.

4. Redistribution

You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:

  1. You must give any other recipients of the Work or Derivative Works a copy of this License; and
  2. You must cause any modified files to carry prominent notices stating that You changed the files; and
  3. You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
  4. If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.

    You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
5. Submission of Contributions

Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.

6. Trademarks

This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty

Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.

8. Limitation of Liability

In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability

While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work

To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives.

Copy
Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.