/// <summary> /// Asynchronously creates a job to copy data from this table to another. /// This method just creates a <see cref="TableReference"/> and delegates to <see cref="BigQueryClient.CreateCopyJobAsync(TableReference, TableReference, CreateCopyJobOptions, CancellationToken)"/>. /// </summary> /// <remarks> /// This method only allows one table (this one) to be used as the source table. To copy multiple tables to one destination table, /// use <see cref="BigQueryClient.CreateCopyJobAsync(IEnumerable{TableReference}, TableReference, CreateCopyJobOptions, CancellationToken)"/>. /// </remarks> /// <param name="destination">The destination table to copy to. Must not be null.</param> /// <param name="options">The options for the operation. May be null, in which case defaults will be supplied.</param> /// <param name="cancellationToken">The token to monitor for cancellation requests.</param> /// <returns>A task representing the asynchronous operation. When complete, the result is the job created for the copy operation.</returns> public Task <BigQueryJob> CreateCopyJobAsync(TableReference destination, CreateCopyJobOptions options = null, CancellationToken cancellationToken = default) => _client.CreateCopyJobAsync(Reference, destination, options, cancellationToken);