core/src/com/google/inject/spi/InjectionPoint.java
public static <T> InjectionPoint forConstructor(
      Constructor<T> constructor, TypeLiteral<? extends T> type) {
    if (type.getRawType() != constructor.getDeclaringClass()) {
      new Errors(type)
          .constructorNotDefinedByType(constructor, type)
          .throwConfigurationExceptionIfErrorsExist();
    }

    return new InjectionPoint(type, constructor);
  }
public static <T> InjectionPoint forConstructor(
      Constructor<T> constructor, TypeLiteral<? extends T> type) {
    if (type.getRawType() != constructor.getDeclaringClass()) {
      new Errors(type)
          .constructorNotDefinedByType(constructor, type)
          .throwConfigurationExceptionIfErrorsExist();
    }

    return new InjectionPoint(type, constructor);
  }
public static < T > InjectionPoint forConstructor ( Constructor < T > constructor , TypeLiteral < ? extends T > type ) { if ( type . getRawType ( ) != constructor . getDeclaringClass ( ) ) { new Errors ( type ) . constructorNotDefinedByType ( constructor , type ) . throwConfigurationExceptionIfErrorsExist ( ) ; } return new InjectionPoint ( type , constructor ) ; }
Returns a new injection point for the specified constructor of {@code type}.

@param constructor any single constructor present on {@code type}.
@param type the concrete type that defines {@code constructor}.
@since 3.0
Returns a new injection point for the specified constructor of { @code type } .