peeky 0.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
 - data/.gitignore +46 -0
 - data/.rspec +3 -0
 - data/.rubocop.yml +57 -0
 - data/.rubocop_todo.yml +54 -0
 - data/CODE_OF_CONDUCT.md +74 -0
 - data/Gemfile +20 -0
 - data/Guardfile +30 -0
 - data/LICENSE.txt +21 -0
 - data/README.md +85 -0
 - data/Rakefile +16 -0
 - data/bin/console +16 -0
 - data/bin/k +36 -0
 - data/bin/kgitsync +76 -0
 - data/bin/khotfix +244 -0
 - data/bin/setup +11 -0
 - data/hooks/pre-commit +87 -0
 - data/hooks/update-version +21 -0
 - data/lib/peeky.rb +21 -0
 - data/lib/peeky/attr_info.rb +63 -0
 - data/lib/peeky/class_info.rb +92 -0
 - data/lib/peeky/method_info.rb +83 -0
 - data/lib/peeky/parameter_info.rb +104 -0
 - data/lib/peeky/predicates/attr_reader_predicate.rb +39 -0
 - data/lib/peeky/predicates/attr_writer_predicate.rb +29 -0
 - data/lib/peeky/renderer/class_interface_render.rb +96 -0
 - data/lib/peeky/renderer/method_call_minimum_params_render.rb +37 -0
 - data/lib/peeky/renderer/method_signature_render.rb +39 -0
 - data/lib/peeky/renderer/method_signature_with_debug_render.rb +86 -0
 - data/lib/peeky/version.rb +5 -0
 - data/peeky.gemspec +40 -0
 - metadata +76 -0
 
| 
         @@ -0,0 +1,37 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Peeky
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Renderer
         
     | 
| 
      
 5 
     | 
    
         
            +
                # Render: Simple instance method calls with minimum parameters
         
     | 
| 
      
 6 
     | 
    
         
            +
                #
         
     | 
| 
      
 7 
     | 
    
         
            +
                # Example output:
         
     | 
| 
      
 8 
     | 
    
         
            +
                #   instance.simple('first_param')
         
     | 
| 
      
 9 
     | 
    
         
            +
                #   instance.complex('aaa', ddd: 'ddd')
         
     | 
| 
      
 10 
     | 
    
         
            +
                class MethodCallMinimumParamsRender
         
     | 
| 
      
 11 
     | 
    
         
            +
                  attr_reader :method_signature
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                  def initialize(method_signature, instance_name = 'instance')
         
     | 
| 
      
 14 
     | 
    
         
            +
                    @instance_name = instance_name
         
     | 
| 
      
 15 
     | 
    
         
            +
                    @method_signature = method_signature
         
     | 
| 
      
 16 
     | 
    
         
            +
                  end
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
                  def render
         
     | 
| 
      
 19 
     | 
    
         
            +
                    name = method_signature.name
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
                    minimal_call_parameters = method_signature
         
     | 
| 
      
 22 
     | 
    
         
            +
                                              .parameters
         
     | 
| 
      
 23 
     | 
    
         
            +
                                              .map(&:minimal_call_format)
         
     | 
| 
      
 24 
     | 
    
         
            +
                                              .reject { |minimal_call| minimal_call.nil? || minimal_call.strip.empty? }
         
     | 
| 
      
 25 
     | 
    
         
            +
                                              .join(', ')
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
                    params = minimal_call_parameters.length.zero? ? '' : "(#{minimal_call_parameters})"
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
                    "#{@instance_name}.#{name}#{params}"
         
     | 
| 
      
 30 
     | 
    
         
            +
                  end
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
                  def debug
         
     | 
| 
      
 33 
     | 
    
         
            +
                    puts render
         
     | 
| 
      
 34 
     | 
    
         
            +
                  end
         
     | 
| 
      
 35 
     | 
    
         
            +
                end
         
     | 
| 
      
 36 
     | 
    
         
            +
              end
         
     | 
| 
      
 37 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,39 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Peeky
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Renderer
         
     | 
| 
      
 5 
     | 
    
         
            +
                # Render: Method Signature in compact format
         
     | 
| 
      
 6 
     | 
    
         
            +
                #
         
     | 
| 
      
 7 
     | 
    
         
            +
                # Example output:
         
     | 
| 
      
 8 
     | 
    
         
            +
                #   def simple(first_param);                                           end
         
     | 
| 
      
 9 
     | 
    
         
            +
                #   def complex(aaa, bbb = nil, *ccc, ddd:, eee: nil, **fff, &ggg);    end
         
     | 
| 
      
 10 
     | 
    
         
            +
                class MethodSignatureRender
         
     | 
| 
      
 11 
     | 
    
         
            +
                  attr_reader :method_signature
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                  def initialize(method_signature)
         
     | 
| 
      
 14 
     | 
    
         
            +
                    @method_signature = method_signature
         
     | 
| 
      
 15 
     | 
    
         
            +
                  end
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
                  def render_signature
         
     | 
| 
      
 18 
     | 
    
         
            +
                    name = method_signature.name
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                    formatted_parameters = method_signature.parameters.map(&:signature_format).join(', ')
         
     | 
| 
      
 21 
     | 
    
         
            +
                    params = formatted_parameters.length.zero? ? '' : "(#{formatted_parameters})"
         
     | 
| 
      
 22 
     | 
    
         
            +
                    "def #{name}#{params}"
         
     | 
| 
      
 23 
     | 
    
         
            +
                  end
         
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
      
 25 
     | 
    
         
            +
                  def render_end
         
     | 
| 
      
 26 
     | 
    
         
            +
                    'end'
         
     | 
| 
      
 27 
     | 
    
         
            +
                  end
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
                  def render
         
     | 
| 
      
 30 
     | 
    
         
            +
                    signature = "#{render_signature};"
         
     | 
| 
      
 31 
     | 
    
         
            +
                    "#{signature.ljust(80)}#{render_end}"
         
     | 
| 
      
 32 
     | 
    
         
            +
                  end
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
                  def debug
         
     | 
| 
      
 35 
     | 
    
         
            +
                    puts render
         
     | 
| 
      
 36 
     | 
    
         
            +
                  end
         
     | 
| 
      
 37 
     | 
    
         
            +
                end
         
     | 
| 
      
 38 
     | 
    
         
            +
              end
         
     | 
| 
      
 39 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,86 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Peeky
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Renderer
         
     | 
| 
      
 5 
     | 
    
         
            +
                # Render: Method signature with debug code
         
     | 
| 
      
 6 
     | 
    
         
            +
                # Stubbed Method Render
         
     | 
| 
      
 7 
     | 
    
         
            +
                #
         
     | 
| 
      
 8 
     | 
    
         
            +
                # Example output:
         
     | 
| 
      
 9 
     | 
    
         
            +
                #   def simple(first_param)
         
     | 
| 
      
 10 
     | 
    
         
            +
                #     puts 'method name: simple'
         
     | 
| 
      
 11 
     | 
    
         
            +
                #     puts first_param                    # first_param is a required positional paramater
         
     | 
| 
      
 12 
     | 
    
         
            +
                #   end
         
     | 
| 
      
 13 
     | 
    
         
            +
                #
         
     | 
| 
      
 14 
     | 
    
         
            +
                #   def complex(aaa, bbb = nil, *ccc, ddd:, eee: nil, **fff, &ggg)
         
     | 
| 
      
 15 
     | 
    
         
            +
                #     puts 'method name: complex'
         
     | 
| 
      
 16 
     | 
    
         
            +
                #     puts aaa                            # aaa is a required positional paramater
         
     | 
| 
      
 17 
     | 
    
         
            +
                #     puts bbb                            # bbb is an optional positional paramater
         
     | 
| 
      
 18 
     | 
    
         
            +
                #     puts ccc                            # *ccc takes a list of positional params
         
     | 
| 
      
 19 
     | 
    
         
            +
                #     puts ddd                            # ddd: is a required named parameter
         
     | 
| 
      
 20 
     | 
    
         
            +
                #     puts eee                            # eee: is an optional named parameter
         
     | 
| 
      
 21 
     | 
    
         
            +
                #     puts fff                            # **fff takes a list of optional named parameters
         
     | 
| 
      
 22 
     | 
    
         
            +
                #     puts ggg                            # &ggg is block with many calling options, example - instance_eval(&block) if block_given?
         
     | 
| 
      
 23 
     | 
    
         
            +
                #   end
         
     | 
| 
      
 24 
     | 
    
         
            +
                class MethodSignatureWithDebugRender
         
     | 
| 
      
 25 
     | 
    
         
            +
                  attr_reader :method_signature
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
                  def initialize(method_signature)
         
     | 
| 
      
 28 
     | 
    
         
            +
                    @method_signature = method_signature
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
                    @render_signature = Peeky::Renderer::MethodSignatureRender.new(method_signature)
         
     | 
| 
      
 31 
     | 
    
         
            +
                  end
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
                  def render_method
         
     | 
| 
      
 34 
     | 
    
         
            +
                    name = method_signature.name
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
                    indent = ''
         
     | 
| 
      
 37 
     | 
    
         
            +
                    output = "#{indent}#{@render_signature.render_signature}\n"
         
     | 
| 
      
 38 
     | 
    
         
            +
                    indent = '  '
         
     | 
| 
      
 39 
     | 
    
         
            +
                    output += "#{indent}puts 'method name: #{name}'\n"
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
                    output += render_logic(indent, 30)
         
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
      
 43 
     | 
    
         
            +
                    indent = ''
         
     | 
| 
      
 44 
     | 
    
         
            +
                    output += "#{indent}#{@render_signature.render_end}\n"
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
                    output
         
     | 
| 
      
 47 
     | 
    
         
            +
                  end
         
     | 
| 
      
 48 
     | 
    
         
            +
             
     | 
| 
      
 49 
     | 
    
         
            +
                  # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity
         
     | 
| 
      
 50 
     | 
    
         
            +
                  def render_logic(indent, size)
         
     | 
| 
      
 51 
     | 
    
         
            +
                    output = ''
         
     | 
| 
      
 52 
     | 
    
         
            +
                    method_signature.parameters.each do |parameter|
         
     | 
| 
      
 53 
     | 
    
         
            +
                      line = ''
         
     | 
| 
      
 54 
     | 
    
         
            +
                      case parameter.type
         
     | 
| 
      
 55 
     | 
    
         
            +
                      when :param_required
         
     | 
| 
      
 56 
     | 
    
         
            +
                        line = "puts #{parameter.name.ljust(size)} # #{parameter.name} is a required positional paramater"
         
     | 
| 
      
 57 
     | 
    
         
            +
                      when :param_optional
         
     | 
| 
      
 58 
     | 
    
         
            +
                        line = "puts #{parameter.name.ljust(size)} # #{parameter.name} is an optional positional paramater"
         
     | 
| 
      
 59 
     | 
    
         
            +
                      when :splat
         
     | 
| 
      
 60 
     | 
    
         
            +
                        line = "puts #{parameter.name.ljust(size)} # *#{parameter.name} takes a list of positional params"
         
     | 
| 
      
 61 
     | 
    
         
            +
                      when :key_required
         
     | 
| 
      
 62 
     | 
    
         
            +
                        line = "puts #{parameter.name.ljust(size)} # #{parameter.name}: is a required named parameter"
         
     | 
| 
      
 63 
     | 
    
         
            +
                      when :key_optional
         
     | 
| 
      
 64 
     | 
    
         
            +
                        line = "puts #{parameter.name.ljust(size)} # #{parameter.name}: is an optional named parameter"
         
     | 
| 
      
 65 
     | 
    
         
            +
                      when :double_splat
         
     | 
| 
      
 66 
     | 
    
         
            +
                        line = "puts #{parameter.name.ljust(size)} # **#{parameter.name} takes a list of optional named parameters"
         
     | 
| 
      
 67 
     | 
    
         
            +
                      when :block
         
     | 
| 
      
 68 
     | 
    
         
            +
                        line = "puts #{parameter.name.ljust(size)} # &#{parameter.name} is block with many calling options, example - instance_eval(&block) if block_given?"
         
     | 
| 
      
 69 
     | 
    
         
            +
                      end
         
     | 
| 
      
 70 
     | 
    
         
            +
             
     | 
| 
      
 71 
     | 
    
         
            +
                      output += "#{indent}#{line}\n"
         
     | 
| 
      
 72 
     | 
    
         
            +
                    end
         
     | 
| 
      
 73 
     | 
    
         
            +
                    output
         
     | 
| 
      
 74 
     | 
    
         
            +
                  end
         
     | 
| 
      
 75 
     | 
    
         
            +
                  # rubocop:enable Metrics/AbcSize, Metrics/CyclomaticComplexity
         
     | 
| 
      
 76 
     | 
    
         
            +
             
     | 
| 
      
 77 
     | 
    
         
            +
                  def render
         
     | 
| 
      
 78 
     | 
    
         
            +
                    render_method
         
     | 
| 
      
 79 
     | 
    
         
            +
                  end
         
     | 
| 
      
 80 
     | 
    
         
            +
             
     | 
| 
      
 81 
     | 
    
         
            +
                  def debug
         
     | 
| 
      
 82 
     | 
    
         
            +
                    puts render
         
     | 
| 
      
 83 
     | 
    
         
            +
                  end
         
     | 
| 
      
 84 
     | 
    
         
            +
                end
         
     | 
| 
      
 85 
     | 
    
         
            +
              end
         
     | 
| 
      
 86 
     | 
    
         
            +
            end
         
     | 
    
        data/peeky.gemspec
    ADDED
    
    | 
         @@ -0,0 +1,40 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require_relative 'lib/peeky/version'
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            Gem::Specification.new do |spec|
         
     | 
| 
      
 6 
     | 
    
         
            +
              spec.required_ruby_version  = '>= 2.5'
         
     | 
| 
      
 7 
     | 
    
         
            +
              spec.name                   = 'peeky'
         
     | 
| 
      
 8 
     | 
    
         
            +
              spec.version                = Peeky::VERSION
         
     | 
| 
      
 9 
     | 
    
         
            +
              spec.authors                = ['David']
         
     | 
| 
      
 10 
     | 
    
         
            +
              spec.email                  = ['david@ideasmen.com.au']
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              spec.summary                = 'Extracting meta data from ruby classes'
         
     | 
| 
      
 13 
     | 
    
         
            +
              spec.description            = 'Peeky is a Ruby GEM for peaking into ruby classes and extracting meta'
         
     | 
| 
      
 14 
     | 
    
         
            +
              spec.homepage               = 'http://appydave.com/gems/peeky'
         
     | 
| 
      
 15 
     | 
    
         
            +
              spec.license                = 'MIT'
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
              # Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
         
     | 
| 
      
 18 
     | 
    
         
            +
              # to allow pushing to a single host or delete this section to allow pushing to any host.
         
     | 
| 
      
 19 
     | 
    
         
            +
              raise 'RubyGems 2.0 or newer is required to protect against public gem pushes.' unless spec.respond_to?(:metadata)
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
              # spec.metadata['allowed_push_host'] = "Set to 'http://mygemserver.com'"
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
              spec.metadata['homepage_uri'] = spec.homepage
         
     | 
| 
      
 24 
     | 
    
         
            +
              spec.metadata['source_code_uri'] = 'https://github.com/klueless-io/peeky'
         
     | 
| 
      
 25 
     | 
    
         
            +
              spec.metadata['changelog_uri'] = 'https://github.com/klueless-io/peeky/commits/master'
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
              # Specify which files should be added to the gem when it is released.
         
     | 
| 
      
 28 
     | 
    
         
            +
              # The `git ls-files -z` loads the RubyGem files that have been added into git.
         
     | 
| 
      
 29 
     | 
    
         
            +
              spec.files = Dir.chdir(File.expand_path(__dir__)) do
         
     | 
| 
      
 30 
     | 
    
         
            +
                `git ls-files -z`.split("\x0").reject do |f|
         
     | 
| 
      
 31 
     | 
    
         
            +
                  f.match(%r{^(test|spec|features)/})
         
     | 
| 
      
 32 
     | 
    
         
            +
                end
         
     | 
| 
      
 33 
     | 
    
         
            +
              end
         
     | 
| 
      
 34 
     | 
    
         
            +
              spec.bindir        = 'exe'
         
     | 
| 
      
 35 
     | 
    
         
            +
              spec.executables   = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
         
     | 
| 
      
 36 
     | 
    
         
            +
              spec.require_paths = ['lib']
         
     | 
| 
      
 37 
     | 
    
         
            +
              # spec.extensions    = ['ext/peeky/extconf.rb']
         
     | 
| 
      
 38 
     | 
    
         
            +
             
     | 
| 
      
 39 
     | 
    
         
            +
              # spec.add_dependency 'tty-box',         '~> 0.5.0'
         
     | 
| 
      
 40 
     | 
    
         
            +
            end
         
     | 
    
        metadata
    ADDED
    
    | 
         @@ -0,0 +1,76 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            --- !ruby/object:Gem::Specification
         
     | 
| 
      
 2 
     | 
    
         
            +
            name: peeky
         
     | 
| 
      
 3 
     | 
    
         
            +
            version: !ruby/object:Gem::Version
         
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.0.14
         
     | 
| 
      
 5 
     | 
    
         
            +
            platform: ruby
         
     | 
| 
      
 6 
     | 
    
         
            +
            authors:
         
     | 
| 
      
 7 
     | 
    
         
            +
            - David
         
     | 
| 
      
 8 
     | 
    
         
            +
            autorequire:
         
     | 
| 
      
 9 
     | 
    
         
            +
            bindir: exe
         
     | 
| 
      
 10 
     | 
    
         
            +
            cert_chain: []
         
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2020-11-03 00:00:00.000000000 Z
         
     | 
| 
      
 12 
     | 
    
         
            +
            dependencies: []
         
     | 
| 
      
 13 
     | 
    
         
            +
            description: Peeky is a Ruby GEM for peaking into ruby classes and extracting meta
         
     | 
| 
      
 14 
     | 
    
         
            +
            email:
         
     | 
| 
      
 15 
     | 
    
         
            +
            - david@ideasmen.com.au
         
     | 
| 
      
 16 
     | 
    
         
            +
            executables: []
         
     | 
| 
      
 17 
     | 
    
         
            +
            extensions: []
         
     | 
| 
      
 18 
     | 
    
         
            +
            extra_rdoc_files: []
         
     | 
| 
      
 19 
     | 
    
         
            +
            files:
         
     | 
| 
      
 20 
     | 
    
         
            +
            - ".gitignore"
         
     | 
| 
      
 21 
     | 
    
         
            +
            - ".rspec"
         
     | 
| 
      
 22 
     | 
    
         
            +
            - ".rubocop.yml"
         
     | 
| 
      
 23 
     | 
    
         
            +
            - ".rubocop_todo.yml"
         
     | 
| 
      
 24 
     | 
    
         
            +
            - CODE_OF_CONDUCT.md
         
     | 
| 
      
 25 
     | 
    
         
            +
            - Gemfile
         
     | 
| 
      
 26 
     | 
    
         
            +
            - Guardfile
         
     | 
| 
      
 27 
     | 
    
         
            +
            - LICENSE.txt
         
     | 
| 
      
 28 
     | 
    
         
            +
            - README.md
         
     | 
| 
      
 29 
     | 
    
         
            +
            - Rakefile
         
     | 
| 
      
 30 
     | 
    
         
            +
            - bin/console
         
     | 
| 
      
 31 
     | 
    
         
            +
            - bin/k
         
     | 
| 
      
 32 
     | 
    
         
            +
            - bin/kgitsync
         
     | 
| 
      
 33 
     | 
    
         
            +
            - bin/khotfix
         
     | 
| 
      
 34 
     | 
    
         
            +
            - bin/setup
         
     | 
| 
      
 35 
     | 
    
         
            +
            - hooks/pre-commit
         
     | 
| 
      
 36 
     | 
    
         
            +
            - hooks/update-version
         
     | 
| 
      
 37 
     | 
    
         
            +
            - lib/peeky.rb
         
     | 
| 
      
 38 
     | 
    
         
            +
            - lib/peeky/attr_info.rb
         
     | 
| 
      
 39 
     | 
    
         
            +
            - lib/peeky/class_info.rb
         
     | 
| 
      
 40 
     | 
    
         
            +
            - lib/peeky/method_info.rb
         
     | 
| 
      
 41 
     | 
    
         
            +
            - lib/peeky/parameter_info.rb
         
     | 
| 
      
 42 
     | 
    
         
            +
            - lib/peeky/predicates/attr_reader_predicate.rb
         
     | 
| 
      
 43 
     | 
    
         
            +
            - lib/peeky/predicates/attr_writer_predicate.rb
         
     | 
| 
      
 44 
     | 
    
         
            +
            - lib/peeky/renderer/class_interface_render.rb
         
     | 
| 
      
 45 
     | 
    
         
            +
            - lib/peeky/renderer/method_call_minimum_params_render.rb
         
     | 
| 
      
 46 
     | 
    
         
            +
            - lib/peeky/renderer/method_signature_render.rb
         
     | 
| 
      
 47 
     | 
    
         
            +
            - lib/peeky/renderer/method_signature_with_debug_render.rb
         
     | 
| 
      
 48 
     | 
    
         
            +
            - lib/peeky/version.rb
         
     | 
| 
      
 49 
     | 
    
         
            +
            - peeky.gemspec
         
     | 
| 
      
 50 
     | 
    
         
            +
            homepage: http://appydave.com/gems/peeky
         
     | 
| 
      
 51 
     | 
    
         
            +
            licenses:
         
     | 
| 
      
 52 
     | 
    
         
            +
            - MIT
         
     | 
| 
      
 53 
     | 
    
         
            +
            metadata:
         
     | 
| 
      
 54 
     | 
    
         
            +
              homepage_uri: http://appydave.com/gems/peeky
         
     | 
| 
      
 55 
     | 
    
         
            +
              source_code_uri: https://github.com/klueless-io/peeky
         
     | 
| 
      
 56 
     | 
    
         
            +
              changelog_uri: https://github.com/klueless-io/peeky/commits/master
         
     | 
| 
      
 57 
     | 
    
         
            +
            post_install_message:
         
     | 
| 
      
 58 
     | 
    
         
            +
            rdoc_options: []
         
     | 
| 
      
 59 
     | 
    
         
            +
            require_paths:
         
     | 
| 
      
 60 
     | 
    
         
            +
            - lib
         
     | 
| 
      
 61 
     | 
    
         
            +
            required_ruby_version: !ruby/object:Gem::Requirement
         
     | 
| 
      
 62 
     | 
    
         
            +
              requirements:
         
     | 
| 
      
 63 
     | 
    
         
            +
              - - ">="
         
     | 
| 
      
 64 
     | 
    
         
            +
                - !ruby/object:Gem::Version
         
     | 
| 
      
 65 
     | 
    
         
            +
                  version: '2.5'
         
     | 
| 
      
 66 
     | 
    
         
            +
            required_rubygems_version: !ruby/object:Gem::Requirement
         
     | 
| 
      
 67 
     | 
    
         
            +
              requirements:
         
     | 
| 
      
 68 
     | 
    
         
            +
              - - ">="
         
     | 
| 
      
 69 
     | 
    
         
            +
                - !ruby/object:Gem::Version
         
     | 
| 
      
 70 
     | 
    
         
            +
                  version: '0'
         
     | 
| 
      
 71 
     | 
    
         
            +
            requirements: []
         
     | 
| 
      
 72 
     | 
    
         
            +
            rubygems_version: 3.1.4
         
     | 
| 
      
 73 
     | 
    
         
            +
            signing_key:
         
     | 
| 
      
 74 
     | 
    
         
            +
            specification_version: 4
         
     | 
| 
      
 75 
     | 
    
         
            +
            summary: Extracting meta data from ruby classes
         
     | 
| 
      
 76 
     | 
    
         
            +
            test_files: []
         
     |