code: private static <T, G extends T> void generateSetMeasuredDimension(DexMaker dexMaker,
                                                                        TypeId<G> generatedType,
                                                                        TypeId<T> baseType) {
          final String methodName = ViewMethod.SET_MEASURED_DIMENSION.getName();
  
          final MethodId<T, Void> superMethod = baseType.getMethod(VOID_TYPE, methodName, TypeId.INT,
                  TypeId.INT);
  
          final MethodId<G, Void> callsSuperMethod = generatedType.getMethod(VOID_TYPE,
                  ViewMethod.SET_MEASURED_DIMENSION.getInvokeName(), TypeId.INT, TypeId.INT);
  
          final Code code = dexMaker.declare(callsSuperMethod, PUBLIC);
  
          final Local<G> localThis = code.getThis(generatedType);
          final Local<Integer> localWidth = code.getParameter(0, TypeId.INT);
          final Local<Integer> localHeight = code.getParameter(1, TypeId.INT);
          code.invokeSuper(superMethod, null, localThis, localWidth, localHeight);
          code.returnVoid();
      }
docs: Generates the {@link android.view.View#setMeasuredDimension(int, int)} method for
  the proxy class.