Sha256: 1fa562fa5649ed57d5161c35e9a85ffc137422739d0ef8fce5428c4db1fb519b

Contents?: true

Size: 1.45 KB

Versions: 6277

Compression:

Stored size: 1.45 KB

Contents

# frozen_string_literal: true
module Psych
  module Visitors
    class Emitter < Psych::Visitors::Visitor
      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

      def visit_Psych_Nodes_Stream o
        @handler.start_stream o.encoding
        o.children.each { |c| accept c }
        @handler.end_stream
      end

      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

      def visit_Psych_Nodes_Scalar o
        @handler.scalar o.value, o.anchor, o.tag, o.plain, o.quoted, o.style
      end

      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

      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

      def visit_Psych_Nodes_Alias o
        @handler.alias o.anchor
      end
    end
  end
end

Version data entries

6,277 entries across 6,274 versions & 27 rubygems

Version Path
mux_ruby-3.20.0 vendor/bundle/ruby/3.2.0/gems/psych-4.0.4/lib/psych/visitors/emitter.rb
cybrid_api_bank_ruby-0.123.12 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_organization_ruby-0.123.12 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_id_ruby-0.123.12 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_bank_ruby-0.123.11 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_organization_ruby-0.123.11 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_id_ruby-0.123.11 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_id_ruby-0.123.10 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_bank_ruby-0.123.10 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_organization_ruby-0.123.10 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_organization_ruby-0.123.7 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_id_ruby-0.123.7 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_bank_ruby-0.123.7 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
ory-client-1.15.12 vendor/bundle/ruby/3.1.0/gems/psych-4.0.6/lib/psych/visitors/emitter.rb
cybrid_api_bank_ruby-0.123.4 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_id_ruby-0.123.4 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_organization_ruby-0.123.4 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_bank_ruby-0.123.3 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_organization_ruby-0.123.3 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb
cybrid_api_id_ruby-0.123.3 vendor/bundle/ruby/3.3.0/gems/psych-5.2.0/lib/psych/visitors/emitter.rb