All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.robolectric.internal.IShadow Maven / Gradle / Ivy

The newest version!
package org.robolectric.internal;

import org.robolectric.util.ReflectionHelpers;

@SuppressWarnings("TypeParameterUnusedInFormals")
public interface IShadow {
   T extract(Object instance);

   T newInstanceOf(Class clazz);

   T newInstance(Class clazz, Class[] parameterTypes, Object[] params);

  /**
   * Returns a proxy object that invokes the original $$robo$$-prefixed methods for {@code
   * shadowedObject}.
   *
   * @deprecated This is incompatible with JDK17+. Use a {@link
   *     org.robolectric.util.reflector.Reflector} interface with {@link
   *     org.robolectric.util.reflector.Direct}.
   */
  @Deprecated
   T directlyOn(T shadowedObject, Class clazz);

   R directlyOn(
      Object shadowedObject,
      String clazzName,
      String methodName,
      ReflectionHelpers.ClassParameter... paramValues);

   R directlyOn(
      T shadowedObject,
      Class clazz,
      String methodName,
      ReflectionHelpers.ClassParameter... paramValues);

   R directlyOn(
      Class clazz, String methodName, ReflectionHelpers.ClassParameter... paramValues);

   R invokeConstructor(
      Class clazz, R instance, ReflectionHelpers.ClassParameter... paramValues);

  String directMethodName(String className, String methodName);

  String directNativeMethodName(String className, String methodName);

  void directInitialize(Class clazz);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy