@Override
 public ParameterConstraintMappingContext constraint(ConstraintDef<?, ?> definition) {
   super.addConstraint(
       ConfiguredConstraint.forParameter(
           definition, executableContext.getExecutable(), parameterIndex));
   return this;
 }
 @Override
 public CrossParameterConstraintMappingContext ignoreAnnotations(boolean ignoreAnnotations) {
   mapping
       .getAnnotationProcessingOptions()
       .ignoreConstraintAnnotationsForCrossParameterConstraint(
           executableContext.getExecutable(), ignoreAnnotations);
   return this;
 }
 public ConstrainedParameter build(
     ConstraintHelper constraintHelper, ParameterNameProvider parameterNameProvider) {
   // TODO HV-919 Support specification of type parameter constraints via XML and API
   return new ConstrainedParameter(
       ConfigurationSource.API,
       ConstraintLocation.forParameter(executableContext.getExecutable(), parameterIndex),
       ReflectionHelper.typeOf(executableContext.getExecutable(), parameterIndex),
       parameterIndex,
       executableContext
           .getExecutable()
           .getParameterNames(parameterNameProvider)
           .get(parameterIndex),
       getConstraints(constraintHelper),
       Collections.<MetaConstraint<?>>emptySet(),
       groupConversions,
       isCascading,
       unwrapMode());
 }