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

39 lines
970 B
Ruby
Raw Normal View History

2015-03-10 00:37:41 +09:00
require 'temple'
require 'hamlit/attribute_compiler'
2015-03-16 13:46:35 +09:00
require 'hamlit/dynamic_formatter'
2015-03-16 18:18:44 +09:00
require 'hamlit/filter_compiler'
2015-03-16 19:28:08 +09:00
require 'hamlit/filter_formatter'
2015-03-16 08:11:07 +09:00
require 'hamlit/multiline_preprocessor'
require 'hamlit/new_attribute_compiler'
require 'hamlit/parser'
2015-03-16 08:11:07 +09:00
require 'hamlit/script_compiler'
2015-03-17 08:17:31 +09:00
require 'hamlit/text_compiler'
2015-03-10 00:37:41 +09:00
module Hamlit
2015-03-10 00:37:41 +09:00
class Engine < Temple::Engine
2015-03-16 06:37:54 +09:00
define_options generator: Temple::Generators::ArrayBuffer
2015-03-12 22:56:34 +09:00
2015-03-16 08:11:07 +09:00
use MultilinePreprocessor
2015-03-10 00:37:41 +09:00
use Parser
use AttributeCompiler
use NewAttributeCompier
2015-03-16 19:28:08 +09:00
use FilterFormatter
2015-03-16 18:18:44 +09:00
use FilterCompiler
use ScriptCompiler
2015-03-17 08:17:31 +09:00
use TextCompiler
2015-03-16 13:46:35 +09:00
use DynamicFormatter
2015-03-10 00:37:41 +09:00
html :Fast
2015-03-15 19:27:53 +09:00
filter :Escapable
2015-03-16 01:07:54 +09:00
filter :ControlFlow
filter :MultiFlattener
filter :StaticMerger
2015-03-12 22:56:34 +09:00
use :Generator do
2015-03-16 12:53:53 +09:00
valid_options = options.to_hash.select do |key, value|
options[:generator].options.valid_key?(key)
end
options[:generator].new(valid_options)
2015-03-12 22:56:34 +09:00
end
2015-03-10 00:37:41 +09:00
end
end