Sha256: 4fba5bf5086a47cc0734d6344cce11967629ecca3e3b4125ac0c6624fead2957
Contents?: true
Size: 1023 Bytes
Versions: 12
Compression:
Stored size: 1023 Bytes
Contents
module Lookbook module Inspectable extend ActiveSupport::Concern included do def source source_code = if custom_source? File.read(source_file_path) else src = CodeIndenter.call(code_object.source) begin send(:format_source, src) rescue NoMethodError src end end source_code.strip_heredoc.strip end def source_lang custom_source? ? Lang.guess(source_file_path, :ruby) : Lang.find(:ruby) end def custom_source? source_file_path.present? end protected attr_reader :code_object def source_file_path @_source_path ||= if code_object.has_tag?(:source) source_path = code_object.tag(:source).value unless source_path.present? && File.exist?(source_path) raise LookbookError, "Could not find source file '#{source_path}'" end source_path end end end end end
Version data entries
12 entries across 12 versions & 1 rubygems