class BraceMarkup::Ast::Tags::Partial

Public Instance Methods

render(context, *args) click to toggle source
# File lib/brace_markup/ast/tags/partial.rb, line 7
def render(context, *args)
  new_context = context.clone
  new_context.filename = File.expand_path(File.join(File.dirname(context.filename), @name))

  @parent.context = context

  # Write the arguments into the context, Todo: Support new context
  render_arguments.each_pair do |key, value|
    new_context.vars[key] = value
  end

  body = ::BraceMarkup.parse_file(new_context.filename)
  body.parent = @parent

  body.render(new_context)
end