# General information about the project.
project = u're2c'
-copyright = u'2016, re2c devs'
+copyright = u'2018, re2c devs'
author = u're2c devs'
# The version info for the project you're documenting, acts as replacement for
# built documents.
#
# The short X.Y version.
-version = '1.0.3'
+version = '1.1'
# The full version, including alpha/beta/rc tags.
-release = '1.0.3'
+release = '1.1'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
static int lex(const char *YYCURSOR)
{
- const char *YYMARKER, *n, *p, *u, *g, *i, *h, *c;
+ const char *YYMARKER, *n, *p, *u, *g, *f, *h, *c;
/*!stags:re2c format = 'const char *@@;'; */
loop:
/*!re2c
@p pass sep
@u uid sep
@g gid sep
- @i info sep
+ @f info sep
@h home sep
@c cmd eol {
printf("user: %.*s\n", (int)(p - n) - 1, n);
printf("password: %.*s\n", (int)(u - p) - 1, p);
printf("UID: %.*s\n", (int)(g - u) - 1, u);
- printf("GID: %.*s\n", (int)(i - g) - 1, g);
- printf("info: %.*s\n", (int)(h - i) - 1, i);
+ printf("GID: %.*s\n", (int)(f - g) - 1, g);
+ printf("info: %.*s\n", (int)(h - f) - 1, f);
printf("home: %.*s\n", (int)(c - h) - 1, h);
printf("command: %.*s\n", (int)(YYCURSOR - c - 1), c);
printf("\n");
</author>
</entry>
+
+ <entry>
+ <title>Release 1.1</title>
+ <link href="http://re2c.org/news/release_notes/1_1.html"/>
+ <id>http://re2c.org/news/release_notes/1_1.html</id>
+ <updated>2018-08-27T23:00:00Z</updated>
+ <summary type="xhtml">
+ <div xmlns="http://www.w3.org/1999/xhtml">
+ Release re2c-1.1 (<a href="http://re2c.org/news/release_notes/1_1.html">release notes</a>).
+ </div>
+ </summary>
+ <author>
+ <name>Ulya Trofimovich</name>
+ <email>skvadrik@gmail.com</email>
+ </author>
+ </entry>
+
</feed>
News & updates
--------------
+* `Release 1.1 <news/release_notes/1_1.html>`_
* `Release 1.0.3 <news/release_notes/1_0_3.html>`_
* `Release 1.0.2 <news/release_notes/1_0_2.html>`_
* `Release 1.0.1 <news/release_notes/1_0_1.html>`_
(but be aware that they are hidden for a good reason:
most of them contain bugs that have been fixed in the next minor release).
+* `re2c-1.1.tar.gz <https://github.com/skvadrik/re2c/releases/download/1.1/re2c-1.1.tar.gz>`_
* `re2c-1.0.3.tar.gz <https://github.com/skvadrik/re2c/releases/download/1.0.3/re2c-1.0.3.tar.gz>`_
* `re2c-0.16.tar.gz <https://github.com/skvadrik/re2c/releases/download/0.16/re2c-0.16.tar.gz>`_
* `re2c-0.15.3.tar.gz <https://github.com/skvadrik/re2c/releases/download/0.15.3/re2c-0.15.3.tar.gz>`_
1.0x
----
+1.1 (2018-08-27)
+~~~~~~~~~~~~~~~~~~
+
+.. include:: 1_1_list.rst
+
1.0.3 (2017-11-08)
~~~~~~~~~~~~~~~~~~
+.. include:: 1_0_3_list.rst
+
1.0.2 (2017-08-26)
~~~~~~~~~~~~~~~~~~
--- /dev/null
+- Replaced Kuklewicz POSIX disambiguation algorithm with Okui algorithm.
+- Optimized GOR1 algorithm (computation of tagged epsilon-closure).
+- Added option ``--conditions`` (an alias for ``-c --start-conditions``).
+- Fixed bug #201 Bugs with option: ``re2c:flags:no-debug-info``.
+- Reworked first part of TDFA paper.
.. toctree::
:maxdepth: 1
+ Release 1.1 <release_notes/1_1>
Release 1.0.3 <release_notes/1_0_3>
Release 1.0.2 <release_notes/1_0_2>
Release 1.0.1 <release_notes/1_0_1>
--- /dev/null
+=============
+Release 1.1
+=============
+
+*by Ulya Trofimovich*
+
+This release doesn't bring in any serious user-visible changes;
+most of the work concentrated on the internal POSIX disambiguation algorithm
+used for submatch extraction with ``--posix-captures`` option.
+The old algorithm, introduced in `release 1.0 <./1_0.html>`_, was based on the work of Chris Kuklewicz
+(outlined on this `haskell wiki page <https://wiki.haskell.org/index.php?title=Regular_expressions/Bounded_space_proposal&oldid=11475>`_
+and formalized in the paper `Tagged Deterministic Finite Automata with Lookahead
+<http://re2c.org/2017_trofimovich_tagged_deterministic_finite_automata_with_lookahead.pdf>`_).
+Kuklewicz algorithm was replaced with a totally different algorithm
+based on the work of Satoshi Okui and Taro Suzuki (described in the paper
+"Disambiguation in Regular Expression Matching via Position Automata with Augmented Transitions", year 2013).
+The main effort in this release was in developing proper theoretical foundations for the new algorithm.
+
+As usual, there has been a couple of bug fixes. The list of changes:
+
+.. include:: ../changelog/1_1_list.rst
+