Class: JekyllAssetPipeline::Template

Inherits:
Object
  • Object
show all
Extended by:
SubclassTracking
Includes:
TemplateHelper
Defined in:
lib/jekyll_asset_pipeline/template.rb

Overview

Base class for the tag templates See github.com/matthodan/jekyll-asset-pipeline#templates

Direct Known Subclasses

CssTagTemplate, JavaScriptTagTemplate

Class Method Summary collapse

Instance Method Summary collapse

Methods included from SubclassTracking

inherited, subclasses

Methods included from TemplateHelper

#output_path, #root_path?

Constructor Details

#initialize(path, filename) ⇒ Template

Returns a new instance of Template.



8
9
10
11
# File 'lib/jekyll_asset_pipeline/template.rb', line 8

def initialize(path, filename)
  @path = path
  @filename = filename
end

Class Method Details

.filetypeObject

Filetype to process (e.g. ‘.js’)



14
15
16
# File 'lib/jekyll_asset_pipeline/template.rb', line 14

def self.filetype
  ''
end

.klass(filename) ⇒ Object

Finds a template class based on a filename



24
25
26
27
28
29
# File 'lib/jekyll_asset_pipeline/template.rb', line 24

def self.klass(filename)
  klasses = JekyllAssetPipeline::Template.subclasses.select do |t|
    t.filetype == File.extname(filename).downcase
  end
  klasses.sort! { |x, y| x.priority <=> y.priority }.last
end

.priorityObject

Priority of template (to override default templates)



19
20
21
# File 'lib/jekyll_asset_pipeline/template.rb', line 19

def self.priority
  0
end

Instance Method Details

#htmlObject

HTML output to return

Available instance variables: Returns string



38
39
40
# File 'lib/jekyll_asset_pipeline/template.rb', line 38

def html
  "#{@path}/#{@filename}\n"
end