Sha256: 541b5282fb44cf5be943f61259097a1bd5c31bb9f9a50f6ea71c29f1cde1f4d0
Contents?: true
Size: 577 Bytes
Versions: 10
Compression:
Stored size: 577 Bytes
Contents
# frozen_string_literal: true module Temple module Filters # Flattens nested multi expressions # # @api public class MultiFlattener < Filter def on_multi(*exps) # If the multi contains a single element, just return the element return compile(exps.first) if exps.size == 1 result = [:multi] exps.each do |exp| exp = compile(exp) if exp.first == :multi result.concat(exp[1..-1]) else result << exp end end result end end end end
Version data entries
10 entries across 9 versions & 3 rubygems