Class: RailsConsolePro::Serializers::IntrospectSerializer

Inherits:
BaseSerializer
  • Object
show all
Defined in:
lib/rails_console_pro/serializers/introspect_serializer.rb

Overview

Serializer for introspection results

Instance Method Summary collapse

Methods inherited from BaseSerializer

#initialize, serialize

Constructor Details

This class inherits a constructor from RailsConsolePro::Serializers::BaseSerializer

Instance Method Details

#serialize(result) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/rails_console_pro/serializers/introspect_serializer.rb', line 7

def serialize(result)
  {
    'type' => 'introspection',
    'model' => result.model.name,
    'callbacks' => serialize_callbacks(result.callbacks),
    'enums' => serialize_enums(result.enums),
    'concerns' => serialize_concerns(result.concerns),
    'scopes' => serialize_scopes(result.scopes),
    'validations' => serialize_validations(result.validations),
    'lifecycle_hooks' => serialize_data(result.lifecycle_hooks),
    'timestamp' => result.timestamp.iso8601,
    'has_callbacks' => result.has_callbacks?,
    'has_enums' => result.has_enums?,
    'has_concerns' => result.has_concerns?,
    'has_scopes' => result.has_scopes?,
    'has_validations' => result.has_validations?
  }
end