Class: GraphQL::TypeKinds::TypeKind

Inherits:
Object
  • Object
show all
Defined in:
lib/graphql/type_kinds.rb

Overview

These objects are singletons, eg GraphQL::TypeKinds::UNION, GraphQL::TypeKinds::SCALAR.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, abstract: false, leaf: false, fields: false, wraps: false, input: false, description: nil) ⇒ TypeKind

Returns a new instance of TypeKind.



8
9
10
11
12
13
14
15
16
17
# File 'lib/graphql/type_kinds.rb', line 8

def initialize(name, abstract: false, leaf: false, fields: false, wraps: false, input: false, description: nil)
  @name = name
  @abstract = abstract
  @fields = fields
  @wraps = wraps
  @input = input
  @leaf = leaf
  @composite = fields? || abstract?
  @description = description
end

Instance Attribute Details

#descriptionObject (readonly)

Returns the value of attribute description.



7
8
9
# File 'lib/graphql/type_kinds.rb', line 7

def description
  @description
end

#nameObject (readonly)

Returns the value of attribute name.



7
8
9
# File 'lib/graphql/type_kinds.rb', line 7

def name
  @name
end

Instance Method Details

#abstract?Boolean

Is this TypeKind abstract?

Returns:

  • (Boolean)


23
# File 'lib/graphql/type_kinds.rb', line 23

def abstract?; @abstract; end

#composite?Boolean

Is this TypeKind composed of many values?

Returns:

  • (Boolean)


34
# File 'lib/graphql/type_kinds.rb', line 34

def composite?; @composite; end

#enum?Boolean

Returns:

  • (Boolean)


52
53
54
# File 'lib/graphql/type_kinds.rb', line 52

def enum?
  self == TypeKinds::ENUM
end

#fields?Boolean

Does this TypeKind have queryable fields?

Returns:

  • (Boolean)


25
# File 'lib/graphql/type_kinds.rb', line 25

def fields?;    @fields;    end

#input?Boolean

Is this TypeKind a valid query input?

Returns:

  • (Boolean)


29
# File 'lib/graphql/type_kinds.rb', line 29

def input?;     @input;     end

#input_object?Boolean

Returns:

  • (Boolean)


56
57
58
# File 'lib/graphql/type_kinds.rb', line 56

def input_object?
  self == TypeKinds::INPUT_OBJECT
end

#interface?Boolean

Returns:

  • (Boolean)


44
45
46
# File 'lib/graphql/type_kinds.rb', line 44

def interface?
  self == TypeKinds::INTERFACE
end

#leaf?Boolean

Is this TypeKind a primitive value?

Returns:

  • (Boolean)


32
# File 'lib/graphql/type_kinds.rb', line 32

def leaf?; @leaf; end

#list?Boolean

Returns:

  • (Boolean)


60
61
62
# File 'lib/graphql/type_kinds.rb', line 60

def list?
  self == TypeKinds::LIST
end

#non_null?Boolean

Returns:

  • (Boolean)


64
65
66
# File 'lib/graphql/type_kinds.rb', line 64

def non_null?
  self == TypeKinds::NON_NULL
end

#object?Boolean

Returns:

  • (Boolean)


40
41
42
# File 'lib/graphql/type_kinds.rb', line 40

def object?
  self == TypeKinds::OBJECT
end

#resolves?Boolean

Deprecated.

Use abstract? instead of resolves?.

Does this TypeKind have multiple possible implementors?

Returns:

  • (Boolean)


21
# File 'lib/graphql/type_kinds.rb', line 21

def resolves?;  @abstract;  end

#scalar?Boolean

Returns:

  • (Boolean)


36
37
38
# File 'lib/graphql/type_kinds.rb', line 36

def scalar?
  self == TypeKinds::SCALAR
end

#to_sObject



30
# File 'lib/graphql/type_kinds.rb', line 30

def to_s;       @name;      end

#union?Boolean

Returns:

  • (Boolean)


48
49
50
# File 'lib/graphql/type_kinds.rb', line 48

def union?
  self == TypeKinds::UNION
end

#wraps?Boolean

Does this TypeKind modify another type?

Returns:

  • (Boolean)


27
# File 'lib/graphql/type_kinds.rb', line 27

def wraps?;     @wraps;     end