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,
    @identifier,
    @handler,
    **options
  )
end

def initialize(source, identifier, handler, options)

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