class Syck::Stream - syck-1.3.0 Documentation

# class Syck::Stream

YAML::Stream – for emitting many documents

### Attributes

documents[RW]
options[RW]

### Public Class Methods

new( opts = {} ) click to toggle source

    # File lib/syck/stream.rb, line 10
    def initialize( opts = {} )
            @options = opts
            @documents = []
    end

### Public Instance Methods

[]( i ) click to toggle source

    # File lib/syck/stream.rb, line 15
    def []( i )
        @documents[ i ]
    end

add( doc ) click to toggle source

    # File lib/syck/stream.rb, line 19
    def add( doc )
            @documents << doc
    end

edit( doc_num, doc ) click to toggle source

    # File lib/syck/stream.rb, line 23
    def edit( doc_num, doc )
      warn "#{caller[0]}: edit is deprecated" if $VERBOSE
            @documents[ doc_num ] = doc
    end

emit( io = nil ) click to toggle source

    # File lib/syck/stream.rb, line 28
        def emit( io = nil )
    # opts = @options.dup
                # opts[:UseHeader] = true if @documents.length > 1
    out = Syck.emitter
    out.reset( io || io2 = StringIO.new )
    @documents.each { |v|
        v.to_yaml( out )
    }
    io || ( io2.rewind; io2.read )
        end