class Getto::Params::Search

Public Class Methods

new(page:, limit:, sort:, query:) click to toggle source
# File lib/getto/params/search.rb, line 4
def initialize(page:, limit:, sort:, query:)
  @page = Page.new(page: page, limit: limit)
  @sort = Sort.new(sort: sort)
  @query = Query.new(query: query)
end

Public Instance Methods

to_h() { |worker| ... } click to toggle source
# File lib/getto/params/search.rb, line 10
def to_h
  worker = Worker.new
  yield worker

  @page.to_h
    .merge(sort: @sort.to_h(sort: worker.instance_variable_get(:@sort)))
    .merge(query: @query.to_h(
      convert: worker.instance_variable_get(:@convert),
      check:   worker.instance_variable_get(:@check),
    ))
end