class GraphQL::Schema::Validator::AllowNullValidator

Use this to specifically reject or permit ‘nil` values (given as `null` from GraphQL).

@example require a non-null value for an argument if it is provided

argument :name, String, required: false, validates: { allow_null: false }

Constants

MESSAGE

Public Class Methods

new(allow_null_positional, allow_null: nil, message: MESSAGE, **default_options) click to toggle source
Calls superclass method GraphQL::Schema::Validator::new
# File lib/graphql/schema/validator/allow_null_validator.rb, line 12
def initialize(allow_null_positional, allow_null: nil, message: MESSAGE, **default_options)
  @message = message
  super(**default_options)
  @allow_null = allow_null.nil? ? allow_null_positional : allow_null
end

Public Instance Methods

validate(_object, _context, value) click to toggle source
# File lib/graphql/schema/validator/allow_null_validator.rb, line 18
def validate(_object, _context, value)
  if value.nil? && !@allow_null
    @message
  end
end