class Coupdoeil::Popover::Setup

def identifier = "#{type}@#{klass.popover_resource_name}"

def identifier = "#{type}@#{klass.popover_resource_name}"

def initialize(klass)

def initialize(klass)
  @klass = klass
  @type = nil
  @params = EMPTY_PARAMS
end

def options = @options ||= klass.default_options_for(type)

def options = @options ||= klass.default_options_for(type)

def render_in(view_context) = klass.new(params, view_context).process(type)

def render_in(view_context) = klass.new(params, view_context).process(type)

def with_options(new_options)

def with_options(new_options)
  @options = options.merge(Popover::OptionsSet.new(new_options))
  self
end

def with_params(**params)

def with_params(**params)
  @params = params
  self
end

def with_type(type)

def with_type(type)
  @type = type
  self
end