Sha256: e0cc42c82b8e89944f58b54964e84a5453fdd006ee196f77201fa7d5a839afab

Contents?: true

Size: 702 Bytes

Versions: 5

Compression:

Stored size: 702 Bytes

Contents

module Alf
  class Reader
    #
    # Specialization of the Reader contract for .alf files.
    #
    # A .alf file simply contains a query expression in the Lispy DSL. This
    # reader decodes and compiles the expression and delegates the enumeration
    # to the obtained operator.
    #
    # Note that an Environment must be wired at creation time. A 
    # NoSuchDatasetError will certainly occur otherwise.
    #
    class AlfFile < Reader

      # (see Reader#each)
      def each
        op = Alf.lispy(environment).compile(input_text, input_path)
        op.each(&Proc.new)
      end

      Reader.register(:alf, [".alf"], self)
    end # module AlfFile
  end # class Reader
end # module Alf

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
alf-0.12.2 lib/alf/reader/alf_file.rb
alf-0.12.1 lib/alf/reader/alf_file.rb
alf-0.12.0 lib/alf/reader/alf_file.rb
alf-0.11.1 lib/alf/reader/alf_file.rb
alf-0.11.0 lib/alf/reader/alf_file.rb