class Kadim::MemoryResolver::TemplateStore
Constants
- NAME_BLOCK
- NO_TEMPLATES
usually a majority of template look ups return nothing, use this canonical preallocated array to save memory
- PARTIAL_BLOCK
- PREFIX_BLOCK
- SmallCache
Public Class Methods
new()
click to toggle source
# File lib/kadim/template/memory_resolver.rb, line 19 def initialize @data = SmallCache.new(&NAME_BLOCK) end
Public Instance Methods
add(body, path, partial)
click to toggle source
# File lib/kadim/template/memory_resolver.rb, line 27 def add(body, path, partial) name = path.split("/").last name = name[1..-1] if partial prefix = path.split("/")[0..-2].join("/") @data[name][prefix][partial] = body end
clear()
click to toggle source
# File lib/kadim/template/memory_resolver.rb, line 34 def clear @data.clear end
find(name, prefix, partial)
click to toggle source
# File lib/kadim/template/memory_resolver.rb, line 23 def find(name, prefix, partial) @data[name][prefix][partial].presence || NO_TEMPLATES end