code: public static TypedArgument typed( Class<?> type, Object value )
      {
          type = Objects.requireNonNull( type, "type" );
          if ( value != null && !type.isInstance( value ) )
          {
              throw new IllegalArgumentException(
                      value + " (a " + value.getClass().getName() + ") is not an instance of " + type.getName() );
          }
          return new TypedArgument( type, value );
      }
docs: Factory method.
  
  @param type  the type of the parameter.
  @param value the value of the argument.
  @return a new instance.