class Epuber::Compiler::Generator
Attributes
compilation_context[R]
@return [Epuber::Compiler::CompilationContext]
Public Class Methods
new(compilation_context)
click to toggle source
@param [Epuber::Compiler::CompilationContext] compilation_context
# File lib/epuber/compiler/generator.rb, line 25 def initialize(compilation_context) @compilation_context = compilation_context @book = compilation_context.book @target = compilation_context.target @file_resolver = compilation_context.file_resolver end
Protected Instance Methods
generate_xml(&block)
click to toggle source
Helper
function for generating XML
@yields xml_builder @yieldsparam [Nokogiri::XML::Builder] xml_builder
@return [Nokogiri::XML::Document]
# File lib/epuber/compiler/generator.rb, line 54 def generate_xml(&block) builder = Nokogiri::XML::Builder.new(encoding: 'utf-8') do |xml| @xml = xml block.call(xml) unless block.nil? @xml = nil end builder.doc end
pretty_path(file)
click to toggle source
@param [Epuber::Compiler::FileTypes::AbstractFile] file
@return [String]
# File lib/epuber/compiler/generator.rb, line 43 def pretty_path(file) file.destination_path end
pretty_path_for_toc_item(toc_item, fragment: true)
click to toggle source
# File lib/epuber/compiler/generator.rb, line 34 def pretty_path_for_toc_item(toc_item, fragment: true) file = @file_resolver.file_from_request(toc_item.file_request) [file.destination_path, fragment ? toc_item.file_fragment : nil].compact.join('#') end