Sha256: fe2e8f9d95644f8b8725bac949853d261ba8bcc85b7aa2ff44404175b53bb17b

Contents?: true

Size: 1.15 KB

Versions: 5

Compression:

Stored size: 1.15 KB

Contents

# frozen_string_literal: true

module SwaggerDocsGenerator
  module Actions
    # # Test value in actions
    #
    # @abstract classes for all actions class
    # @see https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#operation-object
    class Actions
      attr_reader :hash, :key

      def initialize(key)
        @key = key
        @hash = { @key => {} }
      end

      def hash
        @hash[@key] ? @hash : {}
      end

      # List to all childrens
      def self.descendants
        ObjectSpace.each_object(Class).select { |klass| klass < self }
      end

      private

      def complete_hash(data)
        raw ||= data[@key]
        @hash[@key] = raw
      end
    end
  end
end

require 'swagger_docs_generator/parser/actions/tags'
require 'swagger_docs_generator/parser/actions/summary'
require 'swagger_docs_generator/parser/actions/description'
require 'swagger_docs_generator/parser/actions/response'
require 'swagger_docs_generator/parser/actions/consumes'
require 'swagger_docs_generator/parser/actions/produces'
require 'swagger_docs_generator/parser/actions/deprecated'
require 'swagger_docs_generator/parser/actions/parameters'

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
swagger_docs_generator-0.2.0.pre.12 lib/swagger_docs_generator/parser/actions/actions.rb
swagger_docs_generator-0.2.0.pre.11 lib/swagger_docs_generator/parser/actions/actions.rb
swagger_docs_generator-0.2.0.pre.10 lib/swagger_docs_generator/parser/actions/actions.rb
swagger_docs_generator-0.2.0.pre.9 lib/swagger_docs_generator/parser/actions/actions.rb
swagger_docs_generator-0.1.2 lib/swagger_docs_generator/parser/actions/actions.rb