Sha256: 2339387fdfb533fb43be6d912b8785ef8e6d43e0db23490f257abe88ec139c60

Contents?: true

Size: 1.4 KB

Versions: 1

Compression:

Stored size: 1.4 KB

Contents

# Snuffle

Snuffle analyzes source code to identify "data clumps", clusters of attributes
that are often used together. It uses this analysis to propose objects that
may be extracted from a given class.

## TODO

* Ignore data clumps called in "loose" class methods (e.g. attr_accessor)
* Match on string concatenation
* Consider weighting based on match type

## Installation

Add this line to your application's Gemfile:

    gem 'snuffle'

And then execute:

    $ bundle

Or install it yourself as:

    $ gem install snuffle

## Usage

    $ snuffle check example.rb

    +----------------------------+------------+-----------------------------+
    |          Filename          | Host Class | Candidate Object Attributes |
    +----------------------------+------------+-----------------------------+
    | example.rb                 | Customer   | company_name, customer_name |
    +----------------------------+------------+-----------------------------+

## Contributing

Please note that this project is released with a [Contributor Code of Conduct](https://gitlab.com/coraline/snuffle/blob/master/CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.

1. Fork the project
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create a new Merge Request

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
snuffle-0.9.1 README.md