Sha256: f4fd45a76e7affbb953fda516264599c46c1a626cd27a511c5b21eb950f84520

Contents?: true

Size: 1.1 KB

Versions: 2

Compression:

Stored size: 1.1 KB

Contents

require 'malt/formats/abstract'
require 'malt/formats/css'
require 'malt/engines/sass'

module Malt::Format

  # Sass Format
  #
  class Sass < Abstract

    register 'sass'

    #
    def sass(*)
      text
    end

    #
    def to_sass(*)
      self
    end

    #
    def css(data=nil, &yld)
      render_engine.render(:format=>:css, :text=>text, :file=>file, :type=>type)
    end

    #
    def to_css(data=nil, &yld)
      result = css(data, &yld)
      CSS.new(:text=>result, :file=>refile(:css), :type=>:css)
    end

    #
    #def compile(db, &yld)
    #  result = render_engine.render(text, db, &yld)
    #  opts = options.merge(:text=>result, file=>refile(:css))
    #  CSS.new(opts)
    #end

    #
    #def render_to(to, db, &yld)
    #  case to
    #  when :css
    #    malt_engine.render_css(text, file, db, &yld)
    #  else
    #    raise UnspportedConversion.new(type, to)
    #  end
    #end

    private

      #
      def render_engine
        @render_engine ||= Malt::Engine::Sass.new(options)
      end

      # Sass default output type is CSS.
      def default
        :css
      end

  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
malt-0.3.0 lib/malt/formats/sass.rb
malt-0.2.0 lib/malt/formats/sass.rb