Changes for version 0.05_09

  • Allow for nested disjunctions in opgrep patterns.

Changes for version 0.05_08

  • I-am-a-muppet.
  • Removed spurious use of Data::Compare.

Changes for version 0.05_07

  • opgrep() can now capture sub-ops so if you plan to extract information from or modify a deeply nested op-tree, you don't have to do the tree-walking yourself.

Changes for version 0.05_06

  • Add the as_opgrep_pattern() method to B::OP for dumping op trees as patterns for matching with opgrep.
  • Add warnings.
  • Documentation fixes.

Changes for version 0.05_05

  • Fix POD error and update README.

Changes for version 0.05_04

  • Fix bug in opgrep() alternations.
  • Add the "kids" keyword to the opgrep syntax.
  • Add the "dump" keyword to the opgrep syntax for debugging.
  • Fixed the Change log (yes, this file) for the last version since the comment on an opgrep() change was incorrect.

Changes for version 0.05_03

  • Fix various bugs in opgrep(). Did that work in 0.05_02 at all?
  • Introduce op_or() to match one of many possible conditions.
  • Add a longer example to opgrep() documentation.
  • Fix POD markup.
  • Add a clear license statement to the docs.
  • Use a string as version -- otherwise it might not be flagged as a development release!

Changes for version 0.05_02

  • ->parent works for all tests now.
  • Added more tests.

Changes for version 0.05_01 - 2005-10-28

  • Added tests. That's the focus of my work right now.
  • opgrep() now acceps \@conditions assertions may be code references
  • Lots of changes to ->parent. This is in progress. It fails when the parent of a node does not exist in the execution pathway of a program. The unused null() ops rooting some conditionals, etc.
    • This function fails tests.
  • Added a function recalc_sub_cache so anon_subs, all_starts, and all_roots' cache of functions can be cleared.
  • Added functions ->siblings, ->ancestors, ->descendants, and _uniq_ops.

Modules

Helper functions for op tree manipulation