com.g2forge.gearbox.functional.proxy.ResultContext Maven / Gradle / Ivy
The newest version!
package com.g2forge.gearbox.functional.proxy;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UncheckedIOException;
import java.lang.reflect.Method;
import java.lang.reflect.Type;
import java.util.Iterator;
import java.util.List;
import java.util.NoSuchElementException;
import java.util.Spliterator;
import java.util.Spliterators;
import java.util.stream.Stream;
import java.util.stream.StreamSupport;
import com.g2forge.alexandria.adt.collection.CircularBuffer;
import com.g2forge.alexandria.java.io.RuntimeIOException;
import com.g2forge.alexandria.java.typed.ATypeRef;
import com.g2forge.alexandria.java.typed.ATypeRefIdentity;
import com.g2forge.alexandria.java.typed.ITypeRef;
import com.g2forge.gearbox.functional.control.IExplicitResultHandler;
import com.g2forge.gearbox.functional.control.IResultContext;
import com.g2forge.gearbox.functional.runner.IProcess;
import com.g2forge.gearbox.functional.runner.redirect.InheritRedirect;
import com.g2forge.gearbox.functional.runner.redirect.Redirects;
import lombok.Data;
import lombok.Getter;
@Data
class ResultContext implements IResultContext {
protected final Method method;
@Getter(lazy = true)
private final ITypeRef> type = computeType();
protected ITypeRef> computeType() {
return new ATypeRefIdentity