# Style guide

## Instance variables and getters / setters

We use instance vars only:

- in the constructor
- for [memoization](http://gavinmiller.io/2013/basics-of-ruby-memoization/)

For everything else we use proper getters / setters.

If possible those should be private.

# Style guide

## Instance variables and getters / setters

We use instance vars only:

- in the constructor
- for [memoization](http://gavinmiller.io/2013/basics-of-ruby-memoization/)

For everything else we use proper getters / setters.

If possible those should be private.

## Data types

- Class or module names that are carried around in hashes and configuration and what
not should be designated by constants. So `DuplicateMethodCall`, not `:DuplicateMethodCall` or `"DuplicateMethodCall"`
- Hash keys should be all symbols unless they designate classes / modules - see above.
- Everything else like messages or parameters in smell warnings should be strings, nothing else.

Update styleguide with data types.
Update styleguide with data types.
