package jetbrains.mps.debugger.java.api.evaluation.proxies; /*Generated by MPS */ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import com.sun.jdi.Value; import java.util.List; import com.sun.jdi.VirtualMachine; public abstract class MirrorUtil { protected static MirrorUtil INSTANCE; protected static final Object LOCK = new Object(); public MirrorUtil() { } @NotNull public abstract IValueProxy getValueProxy(@Nullable Value value); @NotNull public abstract List<Value> getValues(VirtualMachine machine, Object... args); @NotNull public abstract Object getJavaValue(@NotNull Value jdiValue); @NotNull public abstract IValueProxy getValueProxyFromJava(@Nullable Object javaValue, VirtualMachine machine); public abstract void init(); public abstract void dispose(); public static MirrorUtil getInstance() { synchronized (LOCK) { return INSTANCE; } } }