Sha256: 9507e36acab3f12ce4bf643473163f1be134c8aba0177c1942da0d01330883b6

Contents?: true

Size: 523 Bytes

Versions: 3

Compression:

Stored size: 523 Bytes

Contents

# frozen_string_literal: true

module SwaggerDocsGenerator
  module Actions
    class Schema
      def initialize(&block)
        instance_eval(&block) if block_given?
      end

      def to_hash
        element = { type: @type || 'array' }
        element.merge!(items: { '$ref': @definition }) if @definition.present?
      end

      private

      def type(text)
        @type = text
      end

      def definition(text)
        @definition = '#/definitions/' + text.tr(' ', '_').camelize
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
swagger_docs_generator-0.2.0 lib/swagger_docs_generator/parser/actions/schema.rb
swagger_docs_generator-0.2.0.pre.14 lib/swagger_docs_generator/parser/actions/schema.rb
swagger_docs_generator-0.2.0.pre.13 lib/swagger_docs_generator/parser/actions/schema.rb