Sha256: 3e865739346ac494a19f6d500f21155b7d266189babcb4d3224f2fd6814e2c3f
Contents?: true
Size: 788 Bytes
Versions: 7
Compression:
Stored size: 788 Bytes
Contents
module Slim # Base class for Temple filters used in Slim # @api private class Filter < Temple::Filter # Dispatch on_slim_* temple_dispatch :slim def on_slim_control(code, content) [:slim, :control, code, compile!(content)] end def on_slim_output(code, escape, content) [:slim, :output, code, escape, compile!(content)] end def on_slim_tag(name, attrs, closed, content) [:slim, :tag, name, compile!(attrs), closed, compile!(content)] end def on_slim_attrs(*attrs) [:slim, :attrs, *attrs.map {|k, v| [k, compile!(v)] }] end # Generate unique temporary variable name # # @return [String] Variable name def tmp_var(prefix) @tmp_var ||= 0 "_slim#{prefix}#{@tmp_var += 1}" end end end
Version data entries
7 entries across 7 versions & 1 rubygems