Sha256: 921dfe041a4cc51bb74e76f22614347380050d049e4cb319c644699777309da6

Contents?: true

Size: 552 Bytes

Versions: 1

Compression:

Stored size: 552 Bytes

Contents

# frozen_string_literal: true

require 'dry/types/printer'

module Dry
  module Types
    # @api private
    class Printer
      MAPPING[Struct::Sum] = :visit_struct_sum
      MAPPING[Struct::Constructor] = :visit_struct_constructor

      def visit_struct_sum(sum)
        visit_sum_constructors(sum) do |constructors|
          visit_options(EMPTY_HASH, sum.meta) do |opts|
            yield "Struct::Sum<#{constructors}#{opts}>"
          end
        end
      end

      alias_method :visit_struct_constructor, :visit_constructor
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
dry-struct-1.3.0 lib/dry/struct/printer.rb