Class: ArraySymbolSerializer

Inherits:
Object
  • Object
show all
Defined in:
app/serializers/array_symbol_serializer.rb

Overview

Note:

Only use this with an array of string column.

Serializes an array of values to/from an array of symbols.

Class Method Summary collapse

Class Method Details

.array_of_symbols(array) ⇒ Array<Symbol>

Coerces every element of the array to a symbol.

Parameters:

  • array (Array)

    values to coerce

Returns:

  • (Array<Symbol>)

    the coerced array



27
28
29
# File 'app/serializers/array_symbol_serializer.rb', line 27

def self.array_of_symbols(array)
  array.map(&:to_sym)
end

.dump(array) ⇒ Array<Symbol>

Prepares an array for database storage.

Parameters:

  • array (Array, nil)

    values to coerce to symbols

Returns:

  • (Array<Symbol>)

    the coerced array



11
12
13
# File 'app/serializers/array_symbol_serializer.rb', line 11

def self.dump(array)
  array_of_symbols(array || [])
end

.load(array) ⇒ Array<Symbol>

Restores an array read from the database.

Parameters:

  • array (Array, nil)

    values to coerce to symbols

Returns:

  • (Array<Symbol>)

    the coerced array



19
20
21
# File 'app/serializers/array_symbol_serializer.rb', line 19

def self.load(array)
  array_of_symbols(array || [])
end