Module: Graphql::Generators::FieldExtractor
- Included in:
 - InputGenerator, ObjectGenerator
 
- Defined in:
 - lib/generators/graphql/field_extractor.rb
 
Instance Method Summary collapse
- 
  
    
      #column_type_string(column)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
 - 
  
    
      #fields  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
 - 
  
    
      #generate_column_string(column)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
 - 
  
    
      #klass  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
 
Instance Method Details
#column_type_string(column) ⇒ Object
      20 21 22  | 
    
      # File 'lib/generators/graphql/field_extractor.rb', line 20 def column_type_string(column) column.name == "id" ? "ID" : column.type.to_s.camelize end  | 
  
#fields ⇒ Object
      7 8 9 10 11  | 
    
      # File 'lib/generators/graphql/field_extractor.rb', line 7 def fields columns = [] columns += (klass&.columns&.map { |c| generate_column_string(c) } || []) columns + custom_fields end  | 
  
#generate_column_string(column) ⇒ Object
      13 14 15 16 17 18  | 
    
      # File 'lib/generators/graphql/field_extractor.rb', line 13 def generate_column_string(column) name = column.name required = column.null ? "" : "!" type = column_type_string(column) "#{name}:#{required}#{type}" end  | 
  
#klass ⇒ Object
      24 25 26 27 28  | 
    
      # File 'lib/generators/graphql/field_extractor.rb', line 24 def klass @klass ||= Module.const_get(name.camelize) rescue NameError @klass = nil end  |