Module: GraphSQL::Mapping::ClassMethods

Defined in:
lib/graphsql/mapping.rb

Instance Method Summary collapse

Instance Method Details

#graphsql_association(name, as: name, to: nil) ⇒ Object



28
29
30
31
32
33
34
# File 'lib/graphsql/mapping.rb', line 28

def graphsql_association(name, as: name, to: nil)
  (@graphsql_associations ||= {})[as.to_sym] = Association.new(
    name: name.to_sym,
    field_name: as.to_sym,
    type: to
  )
end

#graphsql_associationsObject



41
42
43
44
# File 'lib/graphsql/mapping.rb', line 41

def graphsql_associations
  inherited = graphsql_mapping_ancestor&.graphsql_associations || {}
  inherited.merge(@graphsql_associations || {})
end

#graphsql_column(name, as: name) ⇒ Object



24
25
26
# File 'lib/graphsql/mapping.rb', line 24

def graphsql_column(name, as: name)
  (@graphsql_columns ||= {})[as.to_sym] = name.to_sym
end

#graphsql_columnsObject



36
37
38
39
# File 'lib/graphsql/mapping.rb', line 36

def graphsql_columns
  inherited = graphsql_mapping_ancestor&.graphsql_columns || {}
  inherited.merge(@graphsql_columns || {})
end

#graphsql_model(model = nil) ⇒ Object



18
19
20
21
22
# File 'lib/graphsql/mapping.rb', line 18

def graphsql_model(model = nil)
  return @graphsql_model = model if model

  @graphsql_model || graphsql_mapping_ancestor&.graphsql_model
end