>> Note that the classes contain actually excellent documentation. >> > Do you have any particular one in mind?
You asked about the AST nodes. > I traced OB's execution to > RBStringReplaceRule and then looked up the hierarchy finding basic > few-sentence descriptions, but nothing in-depth about how to search and > replace. That's a private internal class, you are not supposed to instantiate it. You find documentation about the rewrite engine in the first link I sent you. >> Actually you can do it with a few clicks: Select #deprecated:, click >> on "Refactor method > Add parameter" and follow the instructions. >> > Notice I asked about the API, not about the OB GUI. I couldn't guess that. > I needed to > programmatically change each one depending on the sender's timeStamp and the > collections of what was deprecated in which version. Also, there are already > methods in the system with the name I'm changing to, so OB just mentions > that and fails. A few more clicks and you have a refactoring scope on any method set you want. > Let me ask maybe a better question - how would you do the following > programmatically? I would crete a rewriter for each case, instantiate a RBNamespace, iterate over all methods within, and apply the rewriters if necessary, then review the changeset, and apply it. Cheers, Lukas -- Lukas Renggli www.lukas-renggli.ch
