class Aygabtu::Scope::Base

Constants

COMPONENTS

Attributes

factory_methods[R]

Public Class Methods

blank_slate() click to toggle source
# File lib/aygabtu/scope/base.rb, line 20
def self.blank_slate
  new(filters: [])
end
new(data) click to toggle source
# File lib/aygabtu/scope/base.rb, line 12
def initialize(data)
  @data = data
end

Public Instance Methods

inspect() click to toggle source
# File lib/aygabtu/scope/base.rb, line 61
def inspect
  data = inspect_data
  data.keys.each { |key| data.delete(key) if data[key].nil? }
  message = if data.empty?
    "nothing specified"
  else
    data.map { |key, value| "#{key}: #{value}" }.join(', ')
  end
  "\#<Aygabtu scope (#{message})>"
end
segments() click to toggle source
# File lib/aygabtu/scope/base.rb, line 53
def segments
  if split_once = segments_split_once
    split_once.map(&:segments).reduce(:+)
  else
    [self]
  end
end
visiting_data() click to toggle source
# File lib/aygabtu/scope/base.rb, line 16
def visiting_data
  @data.fetch(:visiting_data, {})
end

Private Instance Methods

inspected_or_nil(obj) click to toggle source
# File lib/aygabtu/scope/base.rb, line 80
def inspected_or_nil(obj)
  obj.inspect unless obj.nil?
end