<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -4,3 +4,6 @@ erl_crash.dump
 
 ## Erlware-specific build files
 _build
+
+## EDoc
+doc/*</diff>
      <filename>.gitignore</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Smak basic authentication middleware. This middleware should be
 %% avoided unless you need to support older HTTP 1.0 clients over SSL. Digest
@@ -20,7 +20,7 @@
 
 -include(&quot;smak.hrl&quot;).
 
-%% @spec init(ewgi_app(), Realm::string(), Auth::function()) -&gt; ewgi_app().
+%% @spec init(ewgi_app(), Realm::string(), Auth::function()) -&gt; ewgi_app()
 %% @doc Initializes basic authentication middleware.
 -spec init(ewgi_app(), string(), function()) -&gt; ewgi_app().
 init(Application, Realm, AuthFunc) when ?IS_EWGI_APPLICATION(Application),</diff>
      <filename>src/smak_auth_basic.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Smak cookie-based session/authentication middleware.
 %% @end</diff>
      <filename>src/smak_auth_cookie.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Smak digest authentication middleware. 
 %% </diff>
      <filename>src/smak_auth_digest.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Smak date/time methods.
 %% @end</diff>
      <filename>src/smak_calendar.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Tools for manipulating hexadecimal string representations of binary
 %% data.</diff>
      <filename>src/smak_hex.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Smak HTML utility methods.
 %% @end</diff>
      <filename>src/smak_html_util.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Smak HTTP status methods. A middleware application is provided which
 %% catches exceptions of a special form and displays the appropriate status</diff>
      <filename>src/smak_http_status.erl</filename>
    </modified>
    <modified>
      <diff>@@ -14,7 +14,7 @@
 
 -include(&quot;smak.hrl&quot;).
 
-%% @spec foldl(Ctx::ewgi_context(), L::[ewgi_app()]) -&gt; ewgi_context().
+%% @spec foldl(Ctx::ewgi_context(), L::[ewgi_app()]) -&gt; ewgi_context()
 %% @doc Fold over middleware components L, processing each one with
 %% process/2.
 %% @see foldr/2
@@ -22,14 +22,14 @@
 foldl(Ctx0, L) when is_record(Ctx0, ewgi_context), is_list(L) -&gt;
     lists:foldl(fun process/2, Ctx0, L).
 
-%% @spec foldr(Ctx::ewgi_context(), L::[ewgi_app()]) -&gt; ewgi_context().
+%% @spec foldr(Ctx::ewgi_context(), L::[ewgi_app()]) -&gt; ewgi_context()
 %% @doc Same as foldl/2 but in the opposite direction.
 %% @see foldl/2
 -spec foldr(#ewgi_context{}, [ewgi_app()]) -&gt; #ewgi_context{}.
 foldr(Ctx0, L) when is_record(Ctx0, ewgi_context), is_list(L) -&gt;
     lists:foldr(fun process/2, Ctx0, L).
 
-%% @spec process(F::ewgi_app(), Ctx::ewgi_context()) -&gt; ewgi_context().
+%% @spec process(F::ewgi_app(), Ctx::ewgi_context()) -&gt; ewgi_context()
 %% @doc If the context contains no errors, processes a middleware
 %% component.  If the middleware generates an error, it is optionally
 %% logged and an error is returned.
@@ -48,14 +48,14 @@ process(F, Ctx) when is_record(Ctx, ewgi_context), ?IS_EWGI_APPLICATION(F) -&gt;
             Ctx
     end.
 
-%% @spec noop() -&gt; ewgi_app().
+%% @spec noop() -&gt; ewgi_app()
 %% @doc Simple 'noop' middleware that returns the EWGI context unchanged.
 -spec noop() -&gt; ewgi_app().
 noop() -&gt;
     fun(Ctx) -&gt; Ctx end.
 
-%% @spec compose(G::ewgi_app(), F::ewgi_app()) -&gt; ewgi_app().
-%% @doc Compose two EWGI applications: G &#8728; F
+%% @spec compose(G::ewgi_app(), F::ewgi_app()) -&gt; ewgi_app()
+%% @doc Compose two EWGI applications: G &amp;#x2218; F
 %% Equivalent to: fun(C) -&gt; G(F(C)) end.
 -spec compose(ewgi_app(), ewgi_app()) -&gt; ewgi_app().
 compose(G, F) -&gt;</diff>
      <filename>src/smak_mw.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Smak utilities for generating random numbers.
 %% @end</diff>
      <filename>src/smak_random.erl</filename>
    </modified>
    <modified>
      <diff>@@ -4,9 +4,9 @@
 %% @doc Smak URL routing.  We define a mechanism for building URL routes
 %% using regular expressions with the possibility of a naive reverse
 %% match which produces a URL from a set of matches.
-%%
+%% 
 %% Examples:
-%%
+%% ```
 %% [&quot;users/&quot;, {name, &quot;\w+&quot;, &quot;foo&quot;}, &quot;/&quot;]
 %% gets mapped to a regular expression that looks like:
 %%     &quot;^users/(?P&lt;name&gt;\w+)/$&quot;
@@ -14,6 +14,7 @@
 %% [&quot;users/&quot;, {name, &quot;\w+&quot;}, &quot;/images&quot;]
 %% becomes:
 %%     &quot;^users/(?P&lt;name&gt;\w+)/images$&quot;
+%% '''
 %% @end
 %%
 %% Licensed under the MIT license:
@@ -113,7 +114,7 @@ look_mod(M) -&gt;
 route(Name, Pat) -&gt;
     route(Name, &lt;&lt;&quot;&quot;&gt;&gt;, Pat).
 
-%% @spec route(Name::rname(), Doc::binary(), Pattern:pattern()) -&gt; croute()
+%% @spec route(Name::rname(), Doc::binary(), Pattern::pattern()) -&gt; croute()
 %% @equiv route(Name, Doc, Pat, [])
 -spec route(rname(), binary(), pattern()) -&gt; #croute{}.
 route(Name, Doc, Pat) -&gt;
@@ -125,7 +126,7 @@ route(Name, Doc, Pat) -&gt;
 %% Pattern.  Doc is a documentation string held in the routing
 %% structure for introspection.  Only group names present in Groups
 %% will be returned in the resolve stage.
-%%
+%% 
 %% A pattern is specified by a list of pattern elements which are
 %% matched in order from left to right.  Matching is similar to
 %% 'greedy' regular expression evaluation (in fact, the current
@@ -133,14 +134,16 @@ route(Name, Doc, Pat) -&gt;
 %%
 %% A route pattern consists of a literal or a match group:
 %% &lt;dl&gt;
-%% &lt;dt&gt;Literal&lt;/dt&gt;
-%% &lt;dd&gt;A literal is simply a PCRE regular expression which must match
-%% the URI&lt;/dd&gt;
-%% &lt;dt&gt;Match Group&lt;/dt&gt;
-%% &lt;dd&gt;A match group is a 2 or 3-tuple of the form {Name, Expression}
-%% or {Name, Expression, Default} where Name is a string and
-%% Expression is a string representing a PCRE regular expression. The
-%% Default value is used if the expression segment doesn't match.&lt;/dd&gt;
+%%   &lt;dt&gt;Literal&lt;/dt&gt;
+%%   &lt;dd&gt;A literal is simply a PCRE regular expression which must
+%%       match the URI&lt;/dd&gt;
+%%   &lt;dt&gt;Match Group&lt;/dt&gt;
+%%   &lt;dd&gt;A match group is a 2 or 3-tuple of the form {Name,
+%%       Expression} or {Name, Expression, Default} where Name is a
+%%       string and Expression is a string representing a PCRE regular
+%%       expression. The Default value is used if the expression
+%%       segment doesn't match.&lt;/dd&gt;
+%% &lt;/dl&gt;
 %%
 %% Patterns concatenate the expressions to create a full URI regular
 %% expression.
@@ -174,7 +177,7 @@ rename(L) when is_list(L) -&gt;
 
 %% @spec resolve(Routes::gb_tree(), Url::string()) -&gt; mresult()
 %%
-%% @type mresult() :: 'nomatch' | {rname(), pmatches()}
+%% @type mresult() = 'nomatch' | {rname(), pmatches()}
 %% @doc Resolve a particular URL using the routing tree.  Simply
 %% returns the match result for dispatching.
 -type mresult() :: 'nomatch' | {rname(), pmatches()}.</diff>
      <filename>src/smak_route.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Implementation of compressed, signed, encrypted share-nothing
 %% cookie-based sessions.</diff>
      <filename>src/smak_sn_cookie.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 
 %% @doc Smak &quot;streams&quot; implementation for compatibility with EWGI. It makes
 %% extensive use of the DELAY and FORCE macros to make the code slightly more</diff>
      <filename>src/smak_streams.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Smak miscellaneous string functions
 %% @end</diff>
      <filename>src/smak_string.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 %% @author Hunter Morris &lt;hunter.morris@smarkets.com&gt;
-%% @copyright 2008 Smarkets Limited.
+%% @copyright 2009 Smarkets Limited.
 %%
 %% @doc Smak URL handling methods.
 %% @end</diff>
      <filename>src/smak_url.erl</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>12c927e42db0dfe9f3f5a09235e7f735e37031c4</id>
    </parent>
  </parents>
  <author>
    <name>Hunter Morris</name>
    <email>huntermorris@gmail.com</email>
  </author>
  <url>http://github.com/skarab/smak/commit/db56c57773a00c3b0e3f41bf0d8ac82c120ff81c</url>
  <id>db56c57773a00c3b0e3f41bf0d8ac82c120ff81c</id>
  <committed-date>2009-03-11T11:21:37-07:00</committed-date>
  <authored-date>2009-03-11T11:21:37-07:00</authored-date>
  <message>Fixed EDoc errors
Updated copyright year</message>
  <tree>57c234fe0b735cd877cf785875bfd567fb951e65</tree>
  <committer>
    <name>Hunter Morris</name>
    <email>huntermorris@gmail.com</email>
  </committer>
</commit>
