class Synchronisable::Input::Descriptor

Provides a set of helper methods to describe user input.

@api private

@see Synchronisable::Input::Descriptor

Attributes

data[R]

Public Class Methods

new(data) click to toggle source
# File lib/synchronisable/input/descriptor.rb, line 12
def initialize(data)
  @data = data
end

Public Instance Methods

array_of_ids?() click to toggle source
# File lib/synchronisable/input/descriptor.rb, line 32
def array_of_ids?
   enumerable? && (
    first_element.is_a?(String) ||
    first_element.is_a?(Integer)
  )
end
element_class() click to toggle source
# File lib/synchronisable/input/descriptor.rb, line 39
def element_class
  first_element.try(:class)
end
empty?() click to toggle source
# File lib/synchronisable/input/descriptor.rb, line 16
def empty?
  @data.blank?
end
local_id?() click to toggle source
# File lib/synchronisable/input/descriptor.rb, line 28
def local_id?
  @data.is_a?(Integer)
end
params?() click to toggle source
# File lib/synchronisable/input/descriptor.rb, line 20
def params?
  @data.is_a?(Hash)
end
remote_id?() click to toggle source
# File lib/synchronisable/input/descriptor.rb, line 24
def remote_id?
  @data.is_a?(String)
end

Private Instance Methods

enumerable?() click to toggle source
# File lib/synchronisable/input/descriptor.rb, line 49
def enumerable?
  @data.is_a?(Enumerable)
end
first_element() click to toggle source
# File lib/synchronisable/input/descriptor.rb, line 45
def first_element
  @data.try(:first)
end