src/main/java/com/machinezoo/pushmode/PageExecutor.java
@Override
	public <T> CompletableFuture<T> submit(Callable<T> task) {
		Objects.requireNonNull(task);
		CompletableFuture<T> future = new CompletableFuture<>();
		execute(() -> eval(task, future));
		return future;
	}
/**
	 * Schedules {@link Callable} on this {@link PageExecutor}.
	 * The supplied {@link Callable} will run in page's event loop.
	 * 
	 * @param task
	 *            {@link Callable} to schedule.
	 * @return {@link CompletableFuture} that will complete normally with result of the supplied {@link Callable} or exceptionally with exception thrown by the {@link Callable}.
	 * @x.threads This method is safe to call from any thread.
	 *            The supplied {@link Callable} will run in the event loop, which means it doesn't need to synchronize access with other events in the same event loop.
	 * @see PageExecutor#submit(Runnable)
	 */
Schedules  Callable on this  PageExecutor.
The supplied  Callable will run in page's event loop.

@param task
Callable to schedule.
@return  CompletableFuture that will complete normally with result of the supplied  Callable or exceptionally with exception thrown by the  Callable.
@x.threads This method is safe to call from any thread.
The supplied  Callable will run in the event loop, which means it doesn't need to synchronize access with other events in the same event loop.
Schedules Callable on this PageExecutor . The supplied Callable will run in page ' s event loop . @param task Callable to schedule . @return CompletableFuture that will complete normally with result of the supplied Callable or exceptionally with exception thrown by the Callable . @x . threads This method is safe to call from any thread . The supplied Callable will run in the event loop which means it doesn ' t need to synchronize access with other events in the same event loop .
@Override
	public <T> CompletableFuture<T> submit(Callable<T> task) {
		Objects.requireNonNull(task);
		CompletableFuture<T> future = new CompletableFuture<>();
		execute(() -> eval(task, future));
		return future;
	}
@ Override public < T > CompletableFuture < T > submit ( Callable < T > task ) { Objects . requireNonNull ( task ) ; CompletableFuture < T > future = new CompletableFuture < > ( ) ; execute ( ( ) -> eval ( task , future ) ) ; return future ; }
Schedules {@link Callable} on this {@link PageExecutor}.
Schedules { @link Callable } on this { @link PageExecutor } .