Sha256: 099c909d3de5afd48885e6b0f7bb6d9e58708bc0962d17a562f08e078ca869d8
Contents?: true
Size: 904 Bytes
Versions: 23
Compression:
Stored size: 904 Bytes
Contents
# frozen_string_literal: true module VagrantPlugins module ProviderLibvirt module Util module ErbTemplate # TODO: remove and use nokogiri builder def to_xml(template_name = nil, data = binding) erb = template_name || self.class.to_s.split('::').last.downcase path = File.join(File.dirname(__FILE__), '..', 'templates') template = "#{erb}.xml" # TODO: according to erubis documentation, we should rather use evaluate and forget about # binding since the template may then change variables values Vagrant::Util::TemplateRenderer.render_with(:render, template, template_root: path) do |renderer| iv = data.eval ("instance_variables.collect {|i| [i, instance_variable_get(i.to_sym)]}") iv.each {|k, v| renderer.instance_variable_set(k, v)} end end end end end end
Version data entries
23 entries across 23 versions & 1 rubygems