Sha256: 4d35bc27bdc454eedd381d74bc997764f07d811f5c618dbc29d1f4e2bdc9f77d

Contents?: true

Size: 660 Bytes

Versions: 10

Compression:

Stored size: 660 Bytes

Contents

# encoding: utf-8

module Unparser
  class Emitter
    class Literal
      # Abstract base class for literal range emitter
      class Range < self

        TOKENS = IceNine.deep_freeze(
          irange: '..',
          erange: '...'
        )

        handle(*TOKENS.keys)

        children :begin_node, :end_node

      private

        # Perform dispatch
        #
        # @return [undefined]
        #
        # @api private
        #
        def dispatch
          visit_terminated(begin_node)
          write(TOKENS.fetch(node.type))
          visit_terminated(end_node)
        end

      end # Range
    end # Literal
  end # Emitter
end # Unparser

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
unparser-0.1.15 lib/unparser/emitter/literal/range.rb
unparser-0.1.14 lib/unparser/emitter/literal/range.rb
unparser-0.1.13 lib/unparser/emitter/literal/range.rb
unparser-0.1.12 lib/unparser/emitter/literal/range.rb
unparser-0.1.11 lib/unparser/emitter/literal/range.rb
unparser-0.1.10 lib/unparser/emitter/literal/range.rb
unparser-0.1.9 lib/unparser/emitter/literal/range.rb
unparser-0.1.8 lib/unparser/emitter/literal/range.rb
unparser-0.1.7 lib/unparser/emitter/literal/range.rb
unparser-0.1.6 lib/unparser/emitter/literal/range.rb