summaryrefslogtreecommitdiff
path: root/regcomp.pl
Commit message (Collapse)AuthorAgeFilesLines
* Move regen scripts to regen/Steffen Mueller2010-10-101-320/+0
| | | | | Moves the various scripts that are called by regen.pl to a subdirectory to reduce clutter.
* Ensure regen.pl and the scripts that it calls can be run by older perls.Nicholas Clark2010-09-221-11/+10
| | | | | | | As the internal comments state, they may be all that is available, particularly if trying to port something to an obscure platform. There's not that much that needs changing to get back to 5.005, or from there to 5.004, but beyond there is hard work, and really not worth it.
* Refactor common parts of op.h, regexp.h into new .hKarl Williamson2010-07-291-22/+25
| | | | | | | | | | | op.h and regexp.h share common elements in their data structures. They have had to manually be kept in sync. This patch makes it easier by putting those common parts into a common header #included by the two. To do this, it seemed easiest to change the symbol definitions to use left shifts to generate the flag bits. But this meant that regcomp.pl and axt/B/defsubs_h.PL had to be taught to recognize those forms of expressions, done in separate commits
* regcomp.pl: Teach to handle wider range of exprsKarl Williamson2010-07-291-7/+22
| | | | | | | In particular teach it to handle definitions using <<, e.g. #define SYMBOL (1<<3) and to remember previous symbol definitons in the file so that symbol can be used in later definitions.
* Convert REGNODE_{SIMPLE,VARIES} to a bitmask lookup, from a strchr() lookup.Nicholas Clark2010-05-271-4/+28
| | | | | | | This is O(1) with no branching, instead of O(n) with branching. Deprecate the old implementation's externally visible variables PL_simple and PL_varies. Google codesearch suggests that nothing outside the core regexp code was using these.
* Change regcomp.pl to 0-based indexing for its arrays and loops.Nicholas Clark2010-05-271-21/+20
|
* Encapsulate lookups in PL_{varies,simple} within macros REGNODE_{VARIES,SIMPLE}Nicholas Clark2010-05-271-0/+2
| | | | This allows the implementation of the lookup mechanism to change.
* Generate PL_simple[] and PL_varies[] with regcomp.pl, rather than hard-coding.Nicholas Clark2010-05-271-3/+38
| | | | | | Add a new flags column to regcomp.sym, with V if the node type is in PL_varies, S if it is in PL_simple, and . if a placeholder is needed because subsequent optional columns are present.
* Re-work the regcomp.sym to remove use of hard tabs. No data change.Nicholas Clark2010-05-271-2/+2
| | | | | The tab separating name and type is replaced with whitespace, the tab marking the start of the description is replaced by a semicolon.
* make regcomp.pl use the standard foo.h-new naming scheme for tmp filesDavid Mitchell2009-05-151-1/+1
|
* Add some documentation to the heads of the various *.pl build scriptsDavid Mitchell2009-05-151-0/+15
|
* Drag autodoc.pl and overload.pl into the age of safer_open().Nicholas Clark2008-03-171-1/+1
| | | | | | | | Thanks to the wisdom of london.pm, stuff the filename into the SCALAR slot of the typeglob created in safer_open(), so that ... Add safer_close(), that will die (with the filename) if the close fails. p4raw-id: //depot/perl@33539
* Rename safer_rename() to rename_if_different(), to accurately describeNicholas Clark2008-03-151-23/+21
| | | | | | | | | | | | | what it does. Use File::Compare rather than Digest::MD5, as the files are small enough to simply read in. (File::Compare dates from 5.004) Remove safer_rename_always(), which isn't used. DRY by replacing the cargo-culted "open or die" with a new function safer_open(), which uses Gensym (5.002) to create an anonymous file handle, and opens and binmodes the file, or dies. This necessitates replacing bareword file handles with lexicals in all the callers. Correct the names of files in close or die constructions. p4raw-id: //depot/perl@33538
* die if multiple macros in regexp.h attempt to use the same flag bit.Nicholas Clark2007-12-291-3/+9
| | | p4raw-id: //depot/perl@32762
* /p vs (?p)Abigail2007-06-301-1/+30
| | | | | | | | | | | | | Date: Fri, 29 Jun 2007 23:38:07 +0200 Message-ID: <20070629213807.GA14454@abigail.nl> Subject: [PATCH pod/perlre.pod] Keeping up with the changes. From: Abigail <abigail@abigail.be> Date: Sat, 30 Jun 2007 01:24:36 +0200 Message-ID: <20070629232436.GA15326@abigail.nl> Plus tweaks, and debug enahancements. p4raw-id: //depot/perl@31506
* Symbian syncJarkko Hietaniemi2007-04-011-1/+1
| | | | | Message-ID: <460EB6C1.4020406@iki.fi> p4raw-id: //depot/perl@30824
* Change 30461 was wrong. As ext/re (re)builds the regexp engine withNicholas Clark2007-03-051-5/+3
| | | | | | | -DDEBUGGING, it's going to need PL_reg_name even if core perl doesn't. So something is always going to use it, so always define it, and always export it. (But only define it once, so that static builds work.) p4raw-id: //depot/perl@30464
* Define and initialise reg_name only once.Nicholas Clark2007-03-031-6/+7
| | | | | | | This allows re to be a static extension. As it's now no-longer a static variable in regcomp.c, it needs a PL_ prefix. p4raw-id: //depot/perl@30451
* Re: [PATCH] New regex syntax omnibusYves Orton2006-11-131-6/+3
| | | | | Message-ID: <9b18b3110611090809l667860c9t6c27453d7c86a21e@mail.gmail.com> p4raw-id: //depot/perl@29260
* Add more backtracking control verbs to regex engine (?CUT), (?ERROR)Yves Orton2006-11-021-9/+18
| | | | | Message-ID: <9b18b3110611020335h7ea469a8g28ca483f6832816d@mail.gmail.com> p4raw-id: //depot/perl@29189
* Re: [PATCH] Add recursive regexes similar to PCREYves Orton2006-10-051-0/+8
| | | | | | | | | | | Date: Wed, 4 Oct 2006 15:45:15 +0200 Message-ID: <9b18b3110610040645s563220a2id6f235494b497e90@mail.gmail.com> Subject: Re: [PATCH] Add recursive regexes similar to PCRE From: demerphq <demerphq@gmail.com> Date: Wed, 4 Oct 2006 21:05:10 +0200 Message-ID: <9b18b3110610041205m2660eb43m1315cf4b0653db96@mail.gmail.com> p4raw-id: //depot/perl@28939
* Fixes to compile Perl with g++ and DEBUGGING.Steve Peters2006-10-041-2/+2
| | | p4raw-id: //depot/perl@28934
* Re: [PATCH] Add hook for re_dup() into regex engine as reg_dupe (make re ↵Yves Orton2006-09-291-3/+5
| | | | | | | pluggable under threads) Message-ID: <9b18b3110609290341p11767110sec20a6fee2038a00@mail.gmail.com> p4raw-id: //depot/perl@28900
* Automate generation of the regmatch() state constantsYves Orton2006-09-251-40/+93
| | | | | | Subject: Re: Problem with EVAL handling in bleads iterative regex code. Message-Id: <9b18b3110609251109t4cb1d443y87d7a7dc94fcfc24@mail.gmail.com> p4raw-id: //depot/perl@28892
* start turning regmatch() main loop into a FSMDave Mitchell2006-06-161-0/+1
| | | | | also make BRANCH use the state stack rather than its own unwind struct p4raw-id: //depot/perl@28398
* Re: [PATCH] More regex optimisations and debug enhancements (including Andys ↵Yves Orton2006-05-291-0/+2
| | | | | | | stuff too) Message-ID: <9b18b3110605280724u54a9c53bn3b20692b6fe4f1c3@mail.gmail.com> p4raw-id: //depot/perl@28325
* Include vim/emacs modelines in generated files to open themRafael Garcia-Suarez2005-05-111-1/+3
| | | | | | in read-only mode. Make vi modelines compatible with non-vim vi versions. p4raw-id: //depot/perl@24445
* Make all scripts run by regen.pl write output with UNIX style EOL's.Steve Hay2004-11-161-0/+1
| | | | | (autodoc.pl was already done by change 23371.) p4raw-id: //depot/perl@23501
* regen_headers tiny tidying:Jarkko Hietaniemi2003-03-081-1/+1
| | | | | | | | | | - regen.pl renamed as regen_lib.pl - regen_headers.pl renamed as regen.pl - added make target 'regen' (kept target 'regen_headers' for porters' brains' backward compatibility) - regen.pl fancified a bit to display the names of the files that got changed by running the scripts p4raw-id: //depot/perl@18851
* regen_headers outside Makefile (was Re: [PATCH] embed.pl doc)Nicholas Clark2002-11-191-4/+6
| | | | | Message-ID: <20021029230003.GF287@Bagpuss.unfortu.net> p4raw-id: //depot/perl@18160
* warning: storage class after type is obsolescentDaniel Muiño2000-08-141-4/+4
| | | | | Message-ID: <20000814164247.A16368@con2-dgi> p4raw-id: //depot/perl@6623
* Cosmetic: data-driven REx-dumpIlya Zakharevich1999-05-101-2/+23
| | | | | Message-Id: <199905060521.BAA03485@monk.mps.ohio-state.edu> p4raw-id: //depot/perl@3372
* phase 1 of somewhat major rearrangement of PERL_OBJECT stuffGurusamy Sarathy1998-10-301-2/+2
| | | | | | | | | | (objpp.h is gone, embed.pl now does some of that); objXSUB.h should soon be automated also; the global variables that escaped the PL_foo conversion are now reined in; renamed MAGIC in regcomp.h to REG_MAGIC to avoid collision with the type of same name; duplicated lists of pp_things in various places is now gone; result has only been tested on win32 p4raw-id: //depot/perl@2133
* add patch that generates regnodes.h via regcomp.plIlya Zakharevich1998-06-221-0/+98
Message-Id: <199806212038.QAA29797@monk.mps.ohio-state.edu> Subject: [PATCH 5.004_67] regcomp.h regnodes cleanup p4raw-id: //depot/perl@1188