Sha256: 448617f91a479b95891650e911278fcdac1a9916529023d1793108cc4c9e9b22

Contents?: true

Size: 845 Bytes

Versions: 1

Compression:

Stored size: 845 Bytes

Contents

module ToSource
  class Emitter
    # Base class for emitters with static content
    class Static < self

    private

      # Perform dispatch
      #
      # @return [undefined]
      #
      # @api private
      #
      def dispatch
        emit(self.class::SYMBOL)
      end

      # Emitter for next nodes
      class Next < self

        handle(Rubinius::AST::Next)
        SYMBOL = :next

      end

      # Emitter for current exception node
      class CurrentException < self

        handle(Rubinius::AST::CurrentException)
        SYMBOL = :'$!'

      end

      # Emitter for self node
      class Self < self

        handle(Rubinius::AST::Self)
        SYMBOL = :self

      end

      # Emitter for file node
      class File < self

        handle(Rubinius::AST::File)
        SYMBOL = :__FILE__

      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
to_source-0.2.16 lib/to_source/emitter/static.rb