Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r52185 - trunk/boost/spirit/home/support/detail/lexer
From: jamin.hanson_at_[hidden]
Date: 2009-04-05 08:19:52


Author: ben_hanson
Date: 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
New Revision: 52185
URL: http://svn.boost.org/trac/boost/changeset/52185

Log:
Copyright date update
Text files modified:
   trunk/boost/spirit/home/support/detail/lexer/char_traits.hpp | 2
   trunk/boost/spirit/home/support/detail/lexer/consts.hpp | 4
   trunk/boost/spirit/home/support/detail/lexer/debug.hpp | 190 ++++++++++++++++++++++++----------------
   trunk/boost/spirit/home/support/detail/lexer/file_input.hpp | 28 +++--
   trunk/boost/spirit/home/support/detail/lexer/generate_cpp.hpp | 12 +
   trunk/boost/spirit/home/support/detail/lexer/input.hpp | 51 +++++-----
   trunk/boost/spirit/home/support/detail/lexer/rules.hpp | 22 ++++
   trunk/boost/spirit/home/support/detail/lexer/runtime_error.hpp | 2
   trunk/boost/spirit/home/support/detail/lexer/size_t.hpp | 2
   trunk/boost/spirit/home/support/detail/lexer/string_token.hpp | 2
   10 files changed, 188 insertions(+), 127 deletions(-)

Modified: trunk/boost/spirit/home/support/detail/lexer/char_traits.hpp
==============================================================================
--- trunk/boost/spirit/home/support/detail/lexer/char_traits.hpp (original)
+++ trunk/boost/spirit/home/support/detail/lexer/char_traits.hpp 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
@@ -1,5 +1,5 @@
 // char_traits.hpp
-// Copyright (c) 2007-2008 Ben Hanson (http://www.benhanson.net/)
+// Copyright (c) 2007-2009 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: trunk/boost/spirit/home/support/detail/lexer/consts.hpp
==============================================================================
--- trunk/boost/spirit/home/support/detail/lexer/consts.hpp (original)
+++ trunk/boost/spirit/home/support/detail/lexer/consts.hpp 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
@@ -1,5 +1,5 @@
 // consts.h
-// Copyright (c) 2007-2008 Ben Hanson (http://www.benhanson.net/)
+// Copyright (c) 2007-2009 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -20,7 +20,7 @@
     enum {end_state_index, id_index, state_index, bol_index, eol_index,
         dead_state_index, dfa_offset};
 
- const std::size_t max_macro_len = 20;
+ const std::size_t max_macro_len = 30;
     const std::size_t num_chars = 256;
     const std::size_t num_wchar_ts =
         (boost::integer_traits<wchar_t>::const_max < 0x110000) ?

Modified: trunk/boost/spirit/home/support/detail/lexer/debug.hpp
==============================================================================
--- trunk/boost/spirit/home/support/detail/lexer/debug.hpp (original)
+++ trunk/boost/spirit/home/support/detail/lexer/debug.hpp 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
@@ -1,5 +1,5 @@
 // debug.hpp
-// Copyright (c) 2007-2008 Ben Hanson (http://www.benhanson.net/)
+// Copyright (c) 2007-2009 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -8,6 +8,7 @@
 
 #include <map>
 #include <ostream>
+#include "rules.hpp"
 #include "size_t.hpp"
 #include "state_machine.hpp"
 #include "string_token.hpp"
@@ -112,6 +113,24 @@
         }
     }
 
+ static void dump (const basic_state_machine<CharT> &state_machine_,
+ basic_rules<CharT> &rules_, ostream &stream_)
+ {
+ typename basic_state_machine<CharT>::iterator iter_ =
+ state_machine_.begin ();
+ typename basic_state_machine<CharT>::iterator end_ =
+ state_machine_.end ();
+
+ for (std::size_t dfa_ = 0, dfas_ = state_machine_.size ();
+ dfa_ < dfas_; ++dfa_)
+ {
+ lexer_state (stream_);
+ stream_ << rules_.state (dfa_) << std::endl << std::endl;
+
+ dump_ex (iter_, stream_);
+ }
+ }
+
     static void dump (const basic_state_machine<CharT> &state_machine_, ostream &stream_)
     {
         typename basic_state_machine<CharT>::iterator iter_ =
@@ -122,173 +141,192 @@
         for (std::size_t dfa_ = 0, dfas_ = state_machine_.size ();
             dfa_ < dfas_; ++dfa_)
         {
- const std::size_t states_ = iter_->states;
+ lexer_state (stream_);
+ stream_ << dfa_ << std::endl << std::endl;
 
- for (std::size_t i_ = 0; i_ < states_; ++i_)
+ dump_ex (iter_, stream_);
+ }
+ }
+
+protected:
+ typedef std::basic_stringstream<CharT> stringstream;
+
+ static void dump_ex (typename basic_state_machine<CharT>::iterator &iter_,
+ ostream &stream_)
+ {
+ const std::size_t states_ = iter_->states;
+
+ for (std::size_t i_ = 0; i_ < states_; ++i_)
+ {
+ state (stream_);
+ stream_ << i_ << std::endl;
+
+ if (iter_->end_state)
             {
- state (stream_);
- stream_ << i_ << std::endl;
+ end_state (stream_);
+ stream_ << iter_->id;
+ dfa (stream_);
+ stream_ << iter_->goto_dfa;
+ stream_ << std::endl;
+ }
 
- if (iter_->end_state)
- {
- end_state (stream_);
- stream_ << iter_->id;
- dfa (stream_);
- stream_ << iter_->goto_dfa;
- stream_ << std::endl;
- }
+ if (iter_->bol_index != npos)
+ {
+ bol (stream_);
+ stream_ << iter_->bol_index << std::endl;
+ }
 
- if (iter_->bol_index != npos)
- {
- bol (stream_);
- stream_ << iter_->bol_index << std::endl;
- }
+ if (iter_->eol_index != npos)
+ {
+ eol (stream_);
+ stream_ << iter_->eol_index << std::endl;
+ }
 
- if (iter_->eol_index != npos)
- {
- eol (stream_);
- stream_ << iter_->eol_index << std::endl;
- }
+ const std::size_t transitions_ = iter_->transitions;
+
+ if (transitions_ == 0)
+ {
+ ++iter_;
+ }
 
- const std::size_t transitions_ = iter_->transitions;
+ for (std::size_t t_ = 0; t_ < transitions_; ++t_)
+ {
+ std::size_t goto_state_ = iter_->goto_state;
 
- if (transitions_ == 0)
+ if (iter_->token.any ())
                 {
- ++iter_;
+ any (stream_);
                 }
-
- for (std::size_t t_ = 0; t_ < transitions_; ++t_)
+ else
                 {
- std::size_t goto_state_ = iter_->goto_state;
+ open_bracket (stream_);
 
- if (iter_->token.any ())
+ if (iter_->token._negated)
                     {
- any (stream_);
+ negated (stream_);
                     }
- else
- {
- open_bracket (stream_);
 
- if (iter_->token._negated)
- {
- negated (stream_);
- }
-
- string charset_;
- CharT c_ = 0;
-
- escape_control_chars (iter_->token._charset,
- charset_);
- c_ = *charset_.c_str ();
-
- if (!iter_->token._negated &&
- (c_ == '^' || c_ == ']'))
- {
- stream_ << '\\';
- }
+ string charset_;
+ CharT c_ = 0;
 
- stream_ << charset_;
- close_bracket (stream_);
+ escape_control_chars (iter_->token._charset,
+ charset_);
+ c_ = *charset_.c_str ();
+
+ if (!iter_->token._negated &&
+ (c_ == '^' || c_ == ']'))
+ {
+ stream_ << '\\';
                     }
 
- stream_ << goto_state_ << std::endl;
- ++iter_;
+ stream_ << charset_;
+ close_bracket (stream_);
                 }
 
- stream_ << std::endl;
+ stream_ << goto_state_ << std::endl;
+ ++iter_;
             }
+
+ stream_ << std::endl;
         }
     }
 
-protected:
- typedef std::basic_stringstream<CharT> stringstream;
+ static void lexer_state (std::ostream &stream_)
+ {
+ stream_ << "Lexer state: ";
+ }
+
+ static void lexer_state (std::wostream &stream_)
+ {
+ stream_ << L"Lexer state: ";
+ }
 
- static void state (std::basic_ostream<char> &stream_)
+ static void state (std::ostream &stream_)
     {
         stream_ << "State: ";
     }
 
- static void state (std::basic_ostream<wchar_t> &stream_)
+ static void state (std::wostream &stream_)
     {
         stream_ << L"State: ";
     }
 
- static void bol (std::basic_ostream<char> &stream_)
+ static void bol (std::ostream &stream_)
     {
         stream_ << " BOL -> ";
     }
 
- static void bol (std::basic_ostream<wchar_t> &stream_)
+ static void bol (std::wostream &stream_)
     {
         stream_ << L" BOL -> ";
     }
 
- static void eol (std::basic_ostream<char> &stream_)
+ static void eol (std::ostream &stream_)
     {
         stream_ << " EOL -> ";
     }
 
- static void eol (std::basic_ostream<wchar_t> &stream_)
+ static void eol (std::wostream &stream_)
     {
         stream_ << L" EOL -> ";
     }
 
- static void end_state (std::basic_ostream<char> &stream_)
+ static void end_state (std::ostream &stream_)
     {
         stream_ << " END STATE, Id = ";
     }
 
- static void end_state (std::basic_ostream<wchar_t> &stream_)
+ static void end_state (std::wostream &stream_)
     {
         stream_ << L" END STATE, Id = ";
     }
 
- static void any (std::basic_ostream<char> &stream_)
+ static void any (std::ostream &stream_)
     {
         stream_ << " . -> ";
     }
 
- static void any (std::basic_ostream<wchar_t> &stream_)
+ static void any (std::wostream &stream_)
     {
         stream_ << L" . -> ";
     }
 
- static void open_bracket (std::basic_ostream<char> &stream_)
+ static void open_bracket (std::ostream &stream_)
     {
         stream_ << " [";
     }
 
- static void open_bracket (std::basic_ostream<wchar_t> &stream_)
+ static void open_bracket (std::wostream &stream_)
     {
         stream_ << L" [";
     }
 
- static void negated (std::basic_ostream<char> &stream_)
+ static void negated (std::ostream &stream_)
     {
         stream_ << "^";
     }
 
- static void negated (std::basic_ostream<wchar_t> &stream_)
+ static void negated (std::wostream &stream_)
     {
         stream_ << L"^";
     }
 
- static void close_bracket (std::basic_ostream<char> &stream_)
+ static void close_bracket (std::ostream &stream_)
     {
         stream_ << "] -> ";
     }
 
- static void close_bracket (std::basic_ostream<wchar_t> &stream_)
+ static void close_bracket (std::wostream &stream_)
     {
         stream_ << L"] -> ";
     }
 
- static void dfa (std::basic_ostream<char> &stream_)
+ static void dfa (std::ostream &stream_)
     {
         stream_ << ", dfa = ";
     }
 
- static void dfa (std::basic_ostream<wchar_t> &stream_)
+ static void dfa (std::wostream &stream_)
     {
         stream_ << L", dfa = ";
     }

Modified: trunk/boost/spirit/home/support/detail/lexer/file_input.hpp
==============================================================================
--- trunk/boost/spirit/home/support/detail/lexer/file_input.hpp (original)
+++ trunk/boost/spirit/home/support/detail/lexer/file_input.hpp 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
@@ -1,5 +1,5 @@
 // file_input.hpp
-// Copyright (c) 2008 Ben Hanson (http://www.benhanson.net/)
+// Copyright (c) 2008-2009 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -96,19 +96,21 @@
 
         void next_token ()
         {
+ const detail::internals &internals_ = _input->_state_machine->data ();
+
             _data.start = _data.end;
 
- if (_input->_state_machine->_dfa->size () == 1)
+ if (internals_._dfa->size () == 1)
             {
- _data.id = _input->next (&_input->_state_machine->_lookup->
- front ()->front (), _input->_state_machine->_dfa_alphabet.
- front (), &_input->_state_machine->_dfa->front ()->
- front (), _data.start, _data.end);
+ _data.id = _input->next (&internals_._lookup->front ()->
+ front (), internals_._dfa_alphabet.front (),
+ &internals_._dfa->front ()->front (), _data.start,
+ _data.end);
             }
             else
             {
- _data.id = _input->next (*_input->_state_machine, _data.state,
- _data.start, _data.end);
+ _data.id = _input->next (internals_, _data.state, _data.start,
+ _data.end);
             }
 
             if (_data.id == 0)
@@ -197,16 +199,16 @@
     const CharT *_end_token;
     CharT *_end_buffer;
 
- std::size_t next (const basic_state_machine<CharT> &state_machine_,
+ std::size_t next (const detail::internals &internals_,
         std::size_t &start_state_, const CharT * &start_, const CharT * &end_)
     {
         _start_token = _end_token;
 
 again:
- const std::size_t * lookup_ = &state_machine_._lookup[start_state_]->
+ const std::size_t * lookup_ = &internals_._lookup[start_state_]->
             front ();
- std::size_t dfa_alphabet_ = state_machine_._dfa_alphabet[start_state_];
- const std::size_t *dfa_ = &state_machine_._dfa[start_state_]->front ();
+ std::size_t dfa_alphabet_ = internals_._dfa_alphabet[start_state_];
+ const std::size_t *dfa_ = &internals_._dfa[start_state_]->front ();
         const std::size_t *ptr_ = dfa_ + dfa_alphabet_;
         const CharT *curr_ = _start_token;
         bool end_state_ = *ptr_ != 0;
@@ -416,9 +418,9 @@
             else if (_start_token < _end_buffer)
             {
                 const std::size_t len_ = _end_buffer - _start_token;
+ // Some systems have memcpy in namespace std.
                 using namespace std;
 
- // Some systems have memcpy in namespace std.
                 memcpy (_start_buffer, _start_token - 1, (len_ + 1) * sizeof (CharT));
                 _stream->read (_start_buffer + len_ + 1,
                     static_cast<std::streamsize> (_buffer.size () - len_ - 1));

Modified: trunk/boost/spirit/home/support/detail/lexer/generate_cpp.hpp
==============================================================================
--- trunk/boost/spirit/home/support/detail/lexer/generate_cpp.hpp (original)
+++ trunk/boost/spirit/home/support/detail/lexer/generate_cpp.hpp 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
@@ -1,5 +1,5 @@
 // generate_cpp_code.hpp
-// Copyright (c) 2008 Ben Hanson (http://www.benhanson.net/)
+// Copyright (c) 2008-2009 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -8,6 +8,7 @@
 
 #include "char_traits.hpp"
 #include "consts.hpp"
+#include "internals.hpp"
 #include <iostream>
 #include <boost/detail/iterator.hpp>
 #include "runtime_error.hpp"
@@ -20,10 +21,13 @@
 namespace lexer
 {
 template<typename CharT>
-void generate_cpp (const basic_state_machine<CharT> &sm_, std::ostream &os_,
- const bool use_pointers_ = false, const bool skip_unknown_ = true,
- const bool optimise_parameters_ = true, const char *name_ = "next_token")
+void generate_cpp (const basic_state_machine<CharT> &state_machine_,
+ std::ostream &os_, const bool use_pointers_ = false,
+ const bool skip_unknown_ = true, const bool optimise_parameters_ = true,
+ const char *name_ = "next_token")
 {
+ const detail::internals &sm_ = state_machine_.data ();
+
     if (sm_._lookup->size () == 0)
     {
         throw runtime_error ("Cannot generate code from an empty state machine");

Modified: trunk/boost/spirit/home/support/detail/lexer/input.hpp
==============================================================================
--- trunk/boost/spirit/home/support/detail/lexer/input.hpp (original)
+++ trunk/boost/spirit/home/support/detail/lexer/input.hpp 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
@@ -1,5 +1,5 @@
 // input.hpp
-// Copyright (c) 2008 Ben Hanson (http://www.benhanson.net/)
+// Copyright (c) 2008-2009 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,7 +7,7 @@
 #define BOOST_LEXER_INPUT
 
 #include "char_traits.hpp"
-#include <iterator>
+#include <boost/detail/iterator.hpp>
 #include "size_t.hpp"
 #include "state_machine.hpp"
 
@@ -102,38 +102,39 @@
 
         void next_token ()
         {
+ const detail::internals &internals_ = _input->_state_machine->data ();
+
             _data.start = _data.end;
 
- if (_input->_state_machine->_dfa->size () == 1)
+ if (internals_._dfa->size () == 1)
             {
- if (_input->_state_machine->_seen_BOL_assertion ||
- _input->_state_machine->_seen_EOL_assertion)
+ if (internals_._seen_BOL_assertion ||
+ internals_._seen_EOL_assertion)
                 {
                     _data.id = next
- (&_input->_state_machine->_lookup->front ()->front (),
- _input->_state_machine->_dfa_alphabet.front (),
- &_input->_state_machine->_dfa->front ()->front (),
+ (&internals_._lookup->front ()->front (),
+ internals_._dfa_alphabet.front (),
+ &internals_._dfa->front ()->front (),
                         _data.bol, _data.end, _input->_end);
                 }
                 else
                 {
- _data.id = next (&_input->_state_machine->_lookup->
- front ()->front (), _input->_state_machine->
- _dfa_alphabet.front (), &_input->_state_machine->
+ _data.id = next (&internals_._lookup->front ()->front (),
+ internals_._dfa_alphabet.front (), &internals_.
                         _dfa->front ()->front (), _data.end, _input->_end);
                 }
             }
             else
             {
- if (_input->_state_machine->_seen_BOL_assertion ||
- _input->_state_machine->_seen_EOL_assertion)
+ if (internals_._seen_BOL_assertion ||
+ internals_._seen_EOL_assertion)
                 {
- _data.id = next (*_input->_state_machine, _data.state,
+ _data.id = next (internals_, _data.state,
                         _data.bol, _data.end, _input->_end);
                 }
                 else
                 {
- _data.id = next (*_input->_state_machine, _data.state,
+ _data.id = next (internals_, _data.state,
                         _data.end, _input->_end);
                 }
             }
@@ -145,18 +146,17 @@
             }
         }
 
- std::size_t next (const basic_state_machine
- <typename Traits::char_type> &state_machine_,
+ std::size_t next (const detail::internals &internals_,
             std::size_t &start_state_, bool bol_,
             FwdIter &start_token_, const FwdIter &end_)
         {
             if (start_token_ == end_) return 0;
 
         again:
- const std::size_t * lookup_ = &state_machine_._lookup[start_state_]->
+ const std::size_t * lookup_ = &internals_._lookup[start_state_]->
                 front ();
- std::size_t dfa_alphabet_ = state_machine_._dfa_alphabet[start_state_];
- const std::size_t *dfa_ = &state_machine_._dfa[start_state_]->front ();
+ std::size_t dfa_alphabet_ = internals_._dfa_alphabet[start_state_];
+ const std::size_t *dfa_ = &internals_._dfa[start_state_]->front ();
             const std::size_t *ptr_ = dfa_ + dfa_alphabet_;
             FwdIter curr_ = start_token_;
             bool end_state_ = *ptr_ != 0;
@@ -244,18 +244,17 @@
             return id_;
         }
 
- std::size_t next (const basic_state_machine
- <typename Traits::char_type> &state_machine_,
+ std::size_t next (const detail::internals &internals_,
             std::size_t &start_state_, FwdIter &start_token_,
             FwdIter const &end_)
         {
             if (start_token_ == end_) return 0;
 
         again:
- const std::size_t * lookup_ = &state_machine_._lookup[start_state_]->
+ const std::size_t * lookup_ = &internals_._lookup[start_state_]->
                 front ();
- std::size_t dfa_alphabet_ = state_machine_._dfa_alphabet[start_state_];
- const std::size_t *dfa_ = &state_machine_._dfa[start_state_]->front ();
+ std::size_t dfa_alphabet_ = internals_._dfa_alphabet[start_state_];
+ const std::size_t *dfa_ = &internals_._dfa[start_state_]->front ();
             const std::size_t *ptr_ = dfa_ + dfa_alphabet_;
             FwdIter curr_ = start_token_;
             bool end_state_ = *ptr_ != 0;
@@ -456,7 +455,7 @@
         iter_._data.id = npos;
         iter_._data.start = _begin;
         iter_._data.end = _begin;
- iter_._data.bol = _state_machine->_seen_BOL_assertion;
+ iter_._data.bol = _state_machine->data ()._seen_BOL_assertion;
         iter_._data.state = 0;
         ++iter_;
         return iter_;

Modified: trunk/boost/spirit/home/support/detail/lexer/rules.hpp
==============================================================================
--- trunk/boost/spirit/home/support/detail/lexer/rules.hpp (original)
+++ trunk/boost/spirit/home/support/detail/lexer/rules.hpp 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
@@ -1,5 +1,5 @@
 // rules.hpp
-// Copyright (c) 2007-2008 Ben Hanson (http://www.benhanson.net/)
+// Copyright (c) 2007-2009 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -129,6 +129,18 @@
         return state_;
     }
 
+ const CharT *state (const std::size_t index_) const
+ {
+ if (index_ == 0)
+ {
+ return initial ();
+ }
+ else
+ {
+ return _lexer_state_names[index_ - 1].c_str ();
+ }
+ }
+
     void add_state (const CharT *name_)
     {
         validate (name_);
@@ -139,6 +151,11 @@
             _regexes.push_back (string_deque ());
             _ids.push_back (id_vector ());
             _states.push_back (id_vector ());
+
+ if (string (name_) != initial ())
+ {
+ _lexer_state_names.push_back (name_);
+ }
         }
     }
 
@@ -320,6 +337,7 @@
     id_vector_deque _states;
     regex_flags _flags;
     std::locale _locale;
+ string_deque _lexer_state_names;
 
     void add (const CharT *curr_state_, const string &regex_,
         const std::size_t id_, const CharT *new_state_, const bool check_)
@@ -403,7 +421,7 @@
                     std::ostringstream os_;
 
                     os_ << "Unknown state name '";
- curr_state_ = state_.c_str();
+ curr_state_ = state_.c_str ();
 
                     while (*curr_state_)
                     {

Modified: trunk/boost/spirit/home/support/detail/lexer/runtime_error.hpp
==============================================================================
--- trunk/boost/spirit/home/support/detail/lexer/runtime_error.hpp (original)
+++ trunk/boost/spirit/home/support/detail/lexer/runtime_error.hpp 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
@@ -1,5 +1,5 @@
 // runtime_error.hpp
-// Copyright (c) 2007-2008 Ben Hanson (http://www.benhanson.net/)
+// Copyright (c) 2007-2009 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: trunk/boost/spirit/home/support/detail/lexer/size_t.hpp
==============================================================================
--- trunk/boost/spirit/home/support/detail/lexer/size_t.hpp (original)
+++ trunk/boost/spirit/home/support/detail/lexer/size_t.hpp 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
@@ -1,5 +1,5 @@
 // size_t.h
-// Copyright (c) 2007-2008 Ben Hanson (http://www.benhanson.net/)
+// Copyright (c) 2007-2009 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: trunk/boost/spirit/home/support/detail/lexer/string_token.hpp
==============================================================================
--- trunk/boost/spirit/home/support/detail/lexer/string_token.hpp (original)
+++ trunk/boost/spirit/home/support/detail/lexer/string_token.hpp 2009-04-05 08:19:49 EDT (Sun, 05 Apr 2009)
@@ -1,5 +1,5 @@
 // string_token.hpp
-// Copyright (c) 2007-2008 Ben Hanson (http://www.benhanson.net/)
+// Copyright (c) 2007-2009 Ben Hanson (http://www.benhanson.net/)
 //
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk