docs: public GraphQLInputType buildDirectiveInputType(Value value) {
          if (value instanceof NullValue) {
              return Scalars.GraphQLString;
          }
          if (value instanceof FloatValue) {
              return Scalars.GraphQLFloat;
          }
          if (value instanceof StringValue) {
              return Scalars.GraphQLString;
          }
          if (value instanceof IntValue) {
              return Scalars.GraphQLInt;
          }
          if (value instanceof BooleanValue) {
              return Scalars.GraphQLBoolean;
          }
          if (value instanceof ArrayValue) {
              ArrayValue arrayValue = (ArrayValue) value;
              return list(buildDirectiveInputType(getArrayValueWrappedType(arrayValue)));
          }
          return assertShouldNeverHappen("Directive values of type '%s' are not supported yet", value.getClass().getSimpleName());
      }