Sha256: e35b9dbdf87cb55d63e05d8859d191b221e222533e3383902a1a0d0c21bf80ee

Contents?: true

Size: 1.2 KB

Versions: 42

Compression:

Stored size: 1.2 KB

Contents

module Sass
  module Tree
    # A static node that wraps the {Sass::Tree} for an `@import`ed file.
    # It doesn't have a functional purpose other than to add the `@import`ed file
    # to the backtrace if an error occurs.
    class FileNode < Node
      # @param filename [String] The name of the imported file
      def initialize(filename)
        @filename = filename
        super()
      end

      # Computes the CSS for the imported file.
      #
      # @param args [Array] Ignored
      def to_s(*args)
        @to_s ||= (style == :compressed ? super().strip : super())
      rescue Sass::SyntaxError => e
        e.add_backtrace_entry(@filename)
        raise e
      end

      def invisible?; to_s.empty?; end

      protected

      # Parses the imported file
      # and runs the dynamic Sass for it.
      #
      # @param environment [Sass::Environment] The lexical environment containing
      #   variable and mixin values
      def perform!(environment)
        self.children = Sass::Files.tree_for(filename, @options).children
        self.children = perform_children(environment)
      rescue Sass::SyntaxError => e
        e.add_backtrace_entry(@filename)
        raise e
      end
    end
  end
end

Version data entries

42 entries across 42 versions & 2 rubygems

Version Path
haml-edge-2.1.25 lib/sass/tree/file_node.rb
haml-edge-2.1.26 lib/sass/tree/file_node.rb
haml-edge-2.1.27 lib/sass/tree/file_node.rb
haml-edge-2.1.28 lib/sass/tree/file_node.rb
haml-edge-2.1.29 lib/sass/tree/file_node.rb
haml-edge-2.1.30 lib/sass/tree/file_node.rb
haml-edge-2.1.32 lib/sass/tree/file_node.rb
haml-edge-2.1.33 lib/sass/tree/file_node.rb
haml-edge-2.1.34 lib/sass/tree/file_node.rb
haml-edge-2.1.35 lib/sass/tree/file_node.rb
haml-edge-2.1.36 lib/sass/tree/file_node.rb
haml-edge-2.1.37 lib/sass/tree/file_node.rb
haml-edge-2.1.38 lib/sass/tree/file_node.rb
haml-edge-2.1.39 lib/sass/tree/file_node.rb
haml-edge-2.1.40 lib/sass/tree/file_node.rb
haml-edge-2.1.41 lib/sass/tree/file_node.rb
haml-edge-2.1.42 lib/sass/tree/file_node.rb
haml-edge-2.1.43 lib/sass/tree/file_node.rb
haml-edge-2.1.44 lib/sass/tree/file_node.rb
haml-edge-2.1.45 lib/sass/tree/file_node.rb