Sha256: 31a609532488e7c22abbbe259f9635c0ad5646537a5c012049e1c7e6e58490ca

Contents?: true

Size: 248 Bytes

Versions: 2

Compression:

Stored size: 248 Bytes

Contents

module Lisp
  class Scope < Hash
    attr_accessor :outer

    def initialize(params = [], args = [], outer = nil)
      update(Hash[params.zip(args)])
      self.outer = outer
    end

    def [](name)
      super or outer[name]
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
lisp-1.0.1 lib/lisp/scope.rb
lisp-1.0.0 lib/lisp/scope.rb