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

Merge TextCompiler into Compiler

This commit is contained in:
Takashi Kokubun 2015-03-28 18:02:55 +09:00
parent 338195f64a
commit 50ea96a6f7
4 changed files with 24 additions and 22 deletions

View file

@ -1,6 +1,7 @@
require 'hamlit/compilers/doctype'
require 'hamlit/compilers/preserve'
require 'hamlit/compilers/script'
require 'hamlit/compilers/text'
require 'hamlit/concerns/escapable'
require 'hamlit/filter'
@ -9,6 +10,7 @@ module Hamlit
include Compilers::Doctype
include Compilers::Preserve
include Compilers::Script
include Compilers::Text
include Concerns::Escapable
end
end

View file

@ -0,0 +1,20 @@
require 'hamlit/filter'
# NOTE: This compiler has an extremely bad effect for performance.
# We should optimize this.
module Hamlit
module Compilers
module Text
def on_haml_text(exp)
compile_text(exp)
end
private
# FIXME: This can't parse '!'
def compile_text(exp)
[:dynamic, "%Q!#{exp}!"]
end
end
end
end

View file

@ -10,7 +10,6 @@ require 'hamlit/html/ugly'
require 'hamlit/multiline'
require 'hamlit/new_attribute_compiler'
require 'hamlit/parser'
require 'hamlit/text_compiler'
module Hamlit
class Engine < Temple::Engine
@ -23,13 +22,12 @@ module Hamlit
use Multiline
use Parser
use FilterFormatter
use FilterCompiler
use Compiler
use AttributeCompiler
use NewAttributeCompier
use AttributeSorter
use FilterFormatter
use FilterCompiler
use TextCompiler
use DynamicFormatter
use :Html, -> { create(html_compiler) }
filter :Escapable

View file

@ -1,18 +0,0 @@
require 'hamlit/filter'
# NOTE: This compiler has an extremely bad effect for performance.
# We should optimize this.
module Hamlit
class TextCompiler < Hamlit::Filter
def on_haml_text(exp)
compile_text(exp)
end
private
# FIXME: This can't parse '!'
def compile_text(exp)
[:dynamic, "%Q!#{exp}!"]
end
end
end