2010-06-21 Rodrigo Kumpera <rkumpera@novell.com>
[mono.git] / mcs / class / System / System.Text.RegularExpressions / ChangeLog
index 708ca8c66971f13c12dc89fed94dc797f6afe837..87ab36b7c85c8eacdf7d6e405ebb7177f998c4a9 100644 (file)
@@ -1,3 +1,70 @@
+2010-06-21  Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * compiler.cs: Add new internal flag to switch on regexp tracing.
+       The code is a statc readonly variable so the JIT can eliminate
+       all tracing code during normal runs.
+
+2010-03-20  Miguel de Icaza  <miguel@novell.com>
+
+       * RxInterpreter.cs: Removed warnings.
+
+2010-02-03  Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * BaseMachine.cs (Split): Don't add empty strings if they don't come from
+       the first capture group. Fixes #566117.
+
+2010-01-12  Miguel de Icaza  <miguel@novell.com>
+
+       * Regex.cs: Re-enable the new regex compiler as the bug seems to
+       be gone now.
+
+2009-09-07  Raja R Harinath  <harinath@hurrynot.org>
+
+       * Regex.cs (Escape, Unescape): Add null checks.
+       (validate_options): Add ECMAScript option checks.
+       (Replace, Split): Add a few bounds checks.
+
+2009-09-07  Raja R Harinath  <harinath@hurrynot.org>
+
+       Add some null checks and bounds checks.
+       * Regex.cs (default_startat): New.  Replaces the fragment
+       'RightToLeft ?  input.Length : 0' with a null-safe variant.
+       (Replace) <string variant>: Add null checks for argument strings.
+       (Split): Likewise.
+       (.ctor): Likewise.  Validate regex options partially.
+       (Match): Add null check on string arguments, and bounds checks for
+       offset and length arguments.
+
+2009-08-20  Raja R Harinath  <harinath@hurrynot.org>
+
+       Final piece of explicit numeric group support
+       * parser.cs (gap): New.
+       (GetMapping): Return it.
+       (ResolveReferences): Collect explicit numeric groups which may not
+       match their indices.
+       (HandleExplicitNumericGroups): New.  Process the above list to
+       assign appropriate indices, and compute the correct value of 'gap'.
+
+2009-08-20  Raja R Harinath  <harinath@hurrynot.org>
+
+       * syntax.cs (CapturingGroup.Index): Rename from Number to clarify
+       semantics.
+       (CapturingGroup.CompareTo): New.
+       * parser.cs, syntax.cs: Update to changes.
+
+2009-08-20  Raja R Harinath  <harinath@hurrynot.org>
+
+       Implement some more group number/index distinction
+       * Regex.cs (gap, Gap): New.
+       (Init, InitNewRegex): Update it.
+       (GroupNumberFromName): If the 'name' is beyond the gap, it is an
+       explicit numeric group -- use the name as the group number.
+       (GetGroupIndex): Use a binary search to map a group number to its
+       index when we know that they don't match.
+       (GroupNumbers): Use group number, not group index, for explicit
+       numeric groups.
+       * Match.cs (.ctor): Use the newly introduce 'Regex.Gap'.
+
 2009-08-19  Raja R Harinath  <harinath@hurrynot.org>
 
        * Regex.cs (group_numbers): New.