test_class.file: sdk/halo-framework/src/test/java/com/mobgen/halo/android/framework/common/utils/ReflectionUtilsTest.java
test_class.identifier: ReflectionUtilsTest
test_class.superclass: extends HaloRobolectricTest
test_case.body: @Test
      public void buildTest() {
          PublicConstructorParam instance = ReflectionUtils.build(ReflectionUtils.getConstructor(PublicConstructorParam.class, PublicConstructorNoParam.class), new PublicConstructorNoParam());
          Assert.assertNotNull(instance);
      }
test_case.class_method_signature: ReflectionUtilsTest.buildTest()
test_case.full_signature: @Test public void buildTest()
test_case.identifier: buildTest
test_case.invocations: build getConstructor assertNotNull
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void buildTest()
focal_class.file: sdk/halo-framework/src/main/java/com/mobgen/halo/android/framework/common/utils/ReflectionUtils.java
focal_class.identifier: ReflectionUtils
focal_class.class_method_signature: ReflectionUtils.ReflectionUtils()
focal_class.full_signature: private  ReflectionUtils()
focal_class.identifier: ReflectionUtils
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.signature:  ReflectionUtils()
focal_class.class_method_signature: ReflectionUtils.toClass(@Nullable String name)
focal_class.full_signature: @Api(2.0) @Nullable public static Class<?> toClass(@Nullable String name)
focal_class.identifier: toClass
focal_class.modifiers: @Api(2.0) @Nullable public static
focal_class.parameters: (@Nullable String name)
focal_class.return: Class<?>
focal_class.signature: Class<?> toClass(@Nullable String name)
focal_class.class_method_signature: ReflectionUtils.newInstance(@NonNull Class<T> clazz)
focal_class.full_signature: @Api(2.0) @Nullable public static T newInstance(@NonNull Class<T> clazz)
focal_class.identifier: newInstance
focal_class.modifiers: @Api(2.0) @Nullable public static
focal_class.parameters: (@NonNull Class<T> clazz)
focal_class.return: T
focal_class.signature: T newInstance(@NonNull Class<T> clazz)
focal_class.class_method_signature: ReflectionUtils.getConstructor(@NonNull Class<T> constructedClass, @NonNull Class<D> innerConstructorClass)
focal_class.full_signature: @Api(2.0) @NonNull public static Constructor<T> getConstructor(@NonNull Class<T> constructedClass, @NonNull Class<D> innerConstructorClass)
focal_class.identifier: getConstructor
focal_class.modifiers: @Api(2.0) @NonNull public static
focal_class.parameters: (@NonNull Class<T> constructedClass, @NonNull Class<D> innerConstructorClass)
focal_class.return: Constructor<T>
focal_class.signature: Constructor<T> getConstructor(@NonNull Class<T> constructedClass, @NonNull Class<D> innerConstructorClass)
focal_class.class_method_signature: ReflectionUtils.build(@NonNull Constructor<T> constructor, @Nullable Object... data)
focal_class.full_signature: @Api(2.0) @NonNull public static T build(@NonNull Constructor<T> constructor, @Nullable Object... data)
focal_class.identifier: build
focal_class.modifiers: @Api(2.0) @NonNull public static
focal_class.parameters: (@NonNull Constructor<T> constructor, @Nullable Object... data)
focal_class.return: T
focal_class.signature: T build(@NonNull Constructor<T> constructor, @Nullable Object... data)
focal_class.class_method_signature: ReflectionUtils.classNameToInnerFilter(@NonNull String className)
focal_class.full_signature: @Api(2.0) @NonNull public static String classNameToInnerFilter(@NonNull String className)
focal_class.identifier: classNameToInnerFilter
focal_class.modifiers: @Api(2.0) @NonNull public static
focal_class.parameters: (@NonNull String className)
focal_class.return: String
focal_class.signature: String classNameToInnerFilter(@NonNull String className)
focal_class.class_method_signature: ReflectionUtils.getFields(@NonNull Class clazz, boolean bringParents)
focal_class.full_signature: @Api(2.0) @NonNull public static Field[] getFields(@NonNull Class clazz, boolean bringParents)
focal_class.identifier: getFields
focal_class.modifiers: @Api(2.0) @NonNull public static
focal_class.parameters: (@NonNull Class clazz, boolean bringParents)
focal_class.return: Field[]
focal_class.signature: Field[] getFields(@NonNull Class clazz, boolean bringParents)
focal_class.class_method_signature: ReflectionUtils.valueOf(Field field, Object reference, Class<T> clazz)
focal_class.full_signature: @Api(2.0) @NonNull public static T valueOf(Field field, Object reference, Class<T> clazz)
focal_class.identifier: valueOf
focal_class.modifiers: @Api(2.0) @NonNull public static
focal_class.parameters: (Field field, Object reference, Class<T> clazz)
focal_class.return: T
focal_class.signature: T valueOf(Field field, Object reference, Class<T> clazz)
focal_method.body: @Api(2.0)
      @NonNull
      public static <T> T build(@NonNull Constructor<T> constructor, @Nullable Object... data) {
          try {
              return constructor.newInstance(data);
          } catch (InstantiationException e) {
              throw new HaloReflectionException("It is not possible to create an instance of class " + constructor.getDeclaringClass().getCanonicalName() + ".", e);
          } catch (IllegalAccessException e) {
              throw new HaloReflectionException("The constructor is not accessible for class " + constructor.getDeclaringClass().getCanonicalName() + ".", e);
          } catch (InvocationTargetException e) {
              throw new HaloReflectionException("Exception thrown by invoked constructor for class " + constructor.getDeclaringClass().getCanonicalName() + ".", e);
          } catch (IllegalArgumentException e) {
              throw new HaloReflectionException("Exception thrown for invalid parameters in class " + constructor.getDeclaringClass().getCanonicalName() + ".", e);
          }
      }
focal_method.class_method_signature: ReflectionUtils.build(@NonNull Constructor<T> constructor, @Nullable Object... data)
focal_method.full_signature: @Api(2.0) @NonNull public static T build(@NonNull Constructor<T> constructor, @Nullable Object... data)
focal_method.identifier: build
focal_method.invocations: newInstance getCanonicalName getDeclaringClass getCanonicalName getDeclaringClass getCanonicalName getDeclaringClass getCanonicalName getDeclaringClass
focal_method.modifiers: @Api(2.0) @NonNull public static
focal_method.parameters: (@NonNull Constructor<T> constructor, @Nullable Object... data)
focal_method.return: T
focal_method.signature: T build(@NonNull Constructor<T> constructor, @Nullable Object... data)