Sha256: ffad18f2615263ea37967eae1cea168542cb13d25f01e0bc1eb3b4dd66f3ea27

Contents?: true

Size: 603 Bytes

Versions: 1

Compression:

Stored size: 603 Bytes

Contents


module GqlSerializer
  class Configuration
    CAMEL_CASE = :camel
    SNAKE_CASE = :snake
    NONE_CASE = :none
    SUPPORTED_CASES = [CAMEL_CASE, SNAKE_CASE, NONE_CASE]

    def initialize
      reset
    end

    attr_accessor :case, :preload

    def case=(value)
      raise "Specified case '#{value}' is not supported" unless SUPPORTED_CASES.include?(value)
      @case = value
    end

    def reset
      @case = NONE_CASE
      @preload = false # Default will be true in version 3+
    end

    def to_h
      self.instance_values.symbolize_keys
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
gql_serializer-2.2.1 lib/gql_serializer/configuration.rb