class ActionView::UnboundTemplate

def bind_locals(locals)

def bind_locals(locals)
  @templates[locals] ||= build_template(locals)
end

def build_template(locals)

def build_template(locals)
  options = @options.merge(locals: locals)
  Template.new(
    @source,
    @identifer,
    @handler,
    **options
  )
end

def initialize(source, identifer, handler, options)

def initialize(source, identifer, handler, options)
  @source = source
  @identifer = identifer
  @handler = handler
  @options = options
  @templates = Concurrent::Map.new(initial_capacity: 2)
end