@@ -24,7 +24,7 @@ following common parts:
2424
2525This division is purely logical -- in the underlying implementation,
2626the message type can choose to have different means of storing the
27- data,dependinn on the type used to tag the message. This section
27+ data,depending on the type used to tag the message. This section
2828covers the `Message Concept `_ as well as the `basic_message `_
2929implementation.
3030
@@ -39,6 +39,7 @@ properties of messages.
3939**Legend **
4040
4141:M: The message type.
42+ :H: A headers container type.
4243:m,n: An instance of **M **.
4344:S: A string type.
4445:s,k,v: An instance of **S **.
@@ -58,20 +59,31 @@ properties of messages.
5859+----------------------------+----------------------+-----------------------------------------+
5960| ``destination(m); ``| unspecified| Retrieve the destination of ``m ``.|
6061+----------------------------+----------------------+-----------------------------------------+
61- | ``headers(m); ``| ``Range<Pair<S,S>> ``| Get the range of headers of ``m ``.|
62+ | ``headers(m); ``| unspecified| Get the range of headers of ``m ``. The|
63+ | | | result should be convertible to ``H ``|
6264+----------------------------+----------------------+-----------------------------------------+
6365| ``body(m); ``| unspecified| Retrieve the body of ``m ``.|
6466+----------------------------+----------------------+-----------------------------------------+
6567| ``m << source(s); ``| ``M & ``| Set the source of ``m ``.|
6668+----------------------------+----------------------+-----------------------------------------+
69+ | ``source(m,s); ``| ``M & ``| Set the source of ``m ``.|
70+ +----------------------------+----------------------+-----------------------------------------+
6771| ``m << destination(s); ``| ``M & ``| Set the destination of ``m ``.|
6872+----------------------------+----------------------+-----------------------------------------+
73+ | ``destination(m,s); ``| ``M & ``| Set the destination of ``m ``.|
74+ +----------------------------+----------------------+-----------------------------------------+
6975| ``m << header(k, v); ``| ``M & ``| Add a header to ``m ``.|
7076+----------------------------+----------------------+-----------------------------------------+
77+ | ``add_header(m, k, v); ``| ``M & ``| Add a header to ``m ``.|
78+ +----------------------------+----------------------+-----------------------------------------+
7179| ``m << remove_header(k); ``| ``M & ``| Remove a header from ``m ``.|
7280+----------------------------+----------------------+-----------------------------------------+
81+ | ``remove_header(m, k); ``| ``M & ``| Remove a header from ``m ``.|
82+ +----------------------------+----------------------+-----------------------------------------+
7383| ``m << body(s); ``| ``M & ``| Set the body of ``m ``.|
7484+----------------------------+----------------------+-----------------------------------------+
85+ | ``body(m,s); ``| ``M & ``| Set the body of ``m ``.|
86+ +----------------------------+----------------------+-----------------------------------------+
7587
7688Types that model the Message Concept are meant to encapsulate data
7789that has a source, a destination, one or more named headers, and a