1
0
Fork 0
mirror of https://github.com/haml/haml.git synced 2022-11-09 12:33:31 -05:00

Do not include Compilers-specific code in Compiler

By the way, I want to use ActiveSupport::Concerns to make the included
class_eval code cleaner.
This commit is contained in:
Takashi Kokubun 2015-03-28 18:43:27 +09:00
parent cfefec3cb0
commit b4c5158936
3 changed files with 14 additions and 11 deletions

View file

@ -4,12 +4,7 @@ require 'hamlit/compilers/filter'
require 'hamlit/compilers/preserve'
require 'hamlit/compilers/script'
require 'hamlit/compilers/text'
require 'hamlit/concerns/escapable'
require 'hamlit/concerns/registerable'
require 'hamlit/filter'
require 'hamlit/filters/css'
require 'hamlit/filters/javascript'
require 'hamlit/filters/ruby'
module Hamlit
class Compiler < Hamlit::Filter
@ -19,11 +14,5 @@ module Hamlit
include Compilers::Preserve
include Compilers::Script
include Compilers::Text
include Concerns::Escapable
extend Concerns::Registerable
register :javascript, Filters::Javascript
register :css, Filters::Css
register :ruby, Filters::Ruby
end
end

View file

@ -9,6 +9,16 @@ module Hamlit
BASE_DEPTH = 2
IGNORED_FILTERS = %w[ruby].freeze
def self.included(base)
base.class_eval do
extend Concerns::Registerable
register :javascript, Filters::Javascript
register :css, Filters::Css
register :ruby, Filters::Ruby
end
end
def on_haml_filter(name, exp)
exp = format_expressions(name, exp)

View file

@ -3,6 +3,10 @@ require 'hamlit/concerns/escapable'
module Hamlit
module Compilers
module Script
def self.included(base)
base.send(:include, Concerns::Escapable)
end
def on_haml_script(*exps)
exps = exps.dup
variable = result_identifier