class Cult::Template::Context
Public Class Methods
new(project, pwd: nil, **kw)
click to toggle source
Calls superclass method
Cult::ProjectContext::new
# File lib/cult/template.rb, line 9 def initialize(project, pwd: nil, **kw) @pwd = pwd super(project, **kw) end
Public Instance Methods
cultsrcid()
click to toggle source
# File lib/cult/template.rb, line 14 def cultsrcid loc = caller_locations(1, 1)[0] path = loc.absolute_path if path.start_with?(project.path) path = project.name + "/" + path[project.path.size + 1 .. -1] end user, host = Etc.getlogin, Socket.gethostname vcs = "#{git_branch}@#{git_commit_id(short: true)}" timestamp = Time.now.iso8601 "@cultsrcid: #{path}:#{loc.lineno} #{vcs} #{timestamp} #{user}@#{host}" end
Private Instance Methods
_process(input, filename: nil)
click to toggle source
# File lib/cult/template.rb, line 29 def _process(input, filename: nil) Dir.chdir(@pwd || Dir.pwd) do erb = Erubi::Engine.new(input, filename: filename) binding.eval(erb.src) end end