# class Psych::Visitors::Emitter

### Public Class Methods

new (io, options = {})
Source

    # File ext/psych/lib/psych/visitors/emitter.rb, line 5
    def initialize io, options = {}
      opts = [:indentation, :canonical, :line_width].find_all { |opt|
        options.key?(opt)
      }

      if opts.empty?
        @handler = Psych::Emitter.new io
      else
        du = Handler::DumperOptions.new
        opts.each { |option| du.send :"#{option}=", options[option] }
        @handler = Psych::Emitter.new io, du
      end
    end

### Public Instance Methods

visit_Psych_Nodes_Alias (o)
Source

    # File ext/psych/lib/psych/visitors/emitter.rb, line 47
    def visit_Psych_Nodes_Alias o
      @handler.alias o.anchor
    end

visit_Psych_Nodes_Document (o)
Source

    # File ext/psych/lib/psych/visitors/emitter.rb, line 25
    def visit_Psych_Nodes_Document o
      @handler.start_document o.version, o.tag_directives, o.implicit
      o.children.each { |c| accept c }
      @handler.end_document o.implicit_end
    end

visit_Psych_Nodes_Mapping (o)
Source

    # File ext/psych/lib/psych/visitors/emitter.rb, line 41
    def visit_Psych_Nodes_Mapping o
      @handler.start_mapping o.anchor, o.tag, o.implicit, o.style
      o.children.each { |c| accept c }
      @handler.end_mapping
    end

visit_Psych_Nodes_Scalar (o)
Source

    # File ext/psych/lib/psych/visitors/emitter.rb, line 31
    def visit_Psych_Nodes_Scalar o
      @handler.scalar o.value, o.anchor, o.tag, o.plain, o.quoted, o.style
    end

visit_Psych_Nodes_Sequence (o)
Source

    # File ext/psych/lib/psych/visitors/emitter.rb, line 35
    def visit_Psych_Nodes_Sequence o
      @handler.start_sequence o.anchor, o.tag, o.implicit, o.style
      o.children.each { |c| accept c }
      @handler.end_sequence
    end

visit_Psych_Nodes_Stream (o)
Source

    # File ext/psych/lib/psych/visitors/emitter.rb, line 19
    def visit_Psych_Nodes_Stream o
      @handler.start_stream o.encoding
      o.children.each { |c| accept c }
      @handler.end_stream
    end