Commit graph

8 commits

Author SHA1 Message Date
Markus Schirp
b7fdf846bc Remove redundant @api private YARD docs 2015-11-15 23:13:43 +00:00
Markus Schirp
4bd15abeb6 Fix positioning of @api YARD tag 2015-07-02 03:35:54 +00:00
Markus Schirp
04a4a44e18 Fix specification holes in Mutant::AST::Meta
* Reduce implementation
* Fix assumption node specific classes under AST::Meta all have
  #assignable? method. They are intentionalyl not LSP compatible and do
  NOT share the class hierarchy for that reason.
* Inline APIs with one call side
2015-06-14 23:56:08 +00:00
Markus Schirp
13cd04d9be Introduce AST::Meta to externalize semantic analysis
* Add Mutant::AST namespace to hold all AST related data / helpers.
* Mutant::AST will be externalized into an ast-meta gem that can be
  shared with unparser for deduplication.
* Over the time the mutators itself will not need to deal with semantic
  analysis of the AST anymore by themselves.
* Move AST analysis for send nodes to AST::Meta
* Fix #209
2014-06-29 21:26:58 +00:00
Markus Schirp
3ae85ea0f9 Refactor and consolidate node type checks in to private methods
* Before Symbol#==, Symbol#eql?, and Symbol#equal? where used
  inconsistently
* Lots of redundant foo.type.equal?(:symbol)
2014-06-10 02:06:00 +00:00
Markus Schirp
a19f3b1691 Nuke UTF-8 encoding headers
* I do not use 1.9.3
* Also keeping them in each file increases mental overhead (true it *can* be autoamted)
* None of the files encodes NON ASCII chars.
* I do not expect it makes any difference, since nobody programmatically
  will consume strings generated by mutant under the assumption they are UTF-8 encoded.
* 1.9.3 Users have to deal with the encoding fuckup under ruby anyways.
2014-06-09 15:37:48 +00:00
Markus Schirp
017ccc1044 Add expression => self mutation
Also reorganizes parts of meta to align filenames to node name better.

Closes #191
2014-06-05 17:48:39 +00:00
Markus Schirp
cadd42908a Do not emit lhs mutations for ivars on or assign
* Closes #150
2014-06-04 16:09:27 +00:00