Sha256: 450a0aaffa8d52257738c71e1e45054e0c677e068f19ac7c9f34cb818303d677

Contents?: true

Size: 709 Bytes

Versions: 9

Compression:

Stored size: 709 Bytes

Contents

module Sass
  class Environment
    attr_reader :parent

    def initialize(parent = nil)
      @vars = {}
      @mixins = {}
      @parent = parent
    end

    def self.inherited_hash(name)
      class_eval <<RUBY, __FILE__, __LINE__ + 1
        def #{name}(name)
          @#{name}s[name] || @parent && @parent.#{name}(name)
        end

        def set_#{name}(name, value)
          if @parent && @parent.#{name}(name)
            @parent.set_#{name}(name, value)
          else
            @#{name}s[name] = value
          end
        end

        def set_local_#{name}(name, value)
          @#{name}s[name] = value
        end
RUBY
    end
    inherited_hash :var
    inherited_hash :mixin
  end
end

Version data entries

9 entries across 9 versions & 5 rubygems

Version Path
honkster-haml-2.1.0 lib/sass/environment.rb
honkster-haml-2.1.1 lib/sass/environment.rb
jwhitmire-haml-2.1.0.1 lib/sass/environment.rb
jwhitmire-haml-2.1.0.2 lib/sass/environment.rb
jwhitmire-haml-2.1.0.3 lib/sass/environment.rb
wireframe-haml-2.1.0 lib/sass/environment.rb
wireframe-haml-2.1.1 lib/sass/environment.rb
merbjedi-haml-2.1.0 lib/sass/environment.rb
spree-0.8.0 vendor/gems/haml-2.1.0/lib/sass/environment.rb