sonic-pi

https://github.com/sonic-pi-net/sonic-pi

C++

Code. Music. Live.

AST::Processor#process

Dispatches `node`. If a node has type `:foo`, then a handler named
`on_foo` is invoked with one argument, the `node`; if there isn't
such a handler, {#handler_missing} is invoked with the same argument.

If the handler returns `nil`, `node` is returned; otherwise, the return
value of the handler is passed along.

Source | Google | Stack overflow

Edit

git clone [email protected]:sonic-pi-net/sonic-pi.git

cd sonic-pi

open app/server/ruby/vendor/ast-2.0.0/lib/ast/processor.rb

Contribute

# Make a new branch

git checkout -b -your-name--update-docs-AST--Processor-process-for-pr


# Commit to git

git add app/server/ruby/vendor/ast-2.0.0/lib/ast/processor.rbgit commit -m "better docs for AST::Processor#process"


# Open pull request

gem install hub # on a mac you can `brew install hub`

hub fork

git push <your name> -your-name--update-docs-AST--Processor-process-for-pr

hub pull-request


# Celebrate!