1.12
The project is in a healthy, maintained state
RuboCop's Node and NodePattern classes.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
 Project Readme

RuboCop AST

Gem Version CI Test Coverage Maintainability

Contains the classes needed by RuboCop to deal with Ruby's AST, in particular:

  • RuboCop::AST::Node (doc)
  • RuboCop::AST::NodePattern (doc)

This gem may be used independently from the main RuboCop gem. It was extracted from RuboCop in version 0.84 and its only dependency is the parser gem, which rubocop-ast extends.

Installation

Just install the rubocop-ast gem

gem install rubocop-ast

or if you use bundler put this in your Gemfile

gem 'rubocop-ast'

Usage

Refer to the documentation of RuboCop::AST::Node and RuboCop::AST::NodePattern

See the docs site for more details.

Parser compatibility switches

This gem, by default, uses most legacy AST output from parser, except for emit_forward_arg which is set to true.

The main RuboCop gem uses these defaults (and is currently only compatible with these), but this gem can be used separately from RuboCop and is meant to be compatible with all settings. For example, to have -> { ... } emitted as LambdaNode instead of SendNode:

RuboCop::AST::Builder.emit_lambda = true

Contributing

Checkout the contribution guidelines.

License

rubocop-ast is MIT licensed. See the accompanying file for the full text.