ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/repos/Represent/Represent.hpp
(Generate patch)

Comparing Represent/Represent.hpp (file contents):
Revision 380 by douglas, 2004-12-23T01:07:33-08:00 vs.
Revision 387 by douglas, 2004-12-24T03:17:21-08:00

# Line 14 | Line 14
14   #endif
15  
16   #include <menes-api/console.hpp>
17 + #include <menes-api/environment.hpp>
18   #include <menes-ios/string.hpp>
19   #include <menes-xml/textwriter.hpp>
20  
21   #include <map>
22 + #include <set>
23 +
24 + #define _sforeach(type, item, set) \
25 +        for (bool _stop(true); _stop; ) \
26 +                for (const type& _set = set; _stop; _stop = false) \
27 +                        _for (type::const_iterator, item, _set.begin(), _set.end())
28  
29   class Represent
30   {
31   private:
32 +        struct Environment
33 +        {
34 +                ext::String get(const ext::String& name) { try { return api::TheEnvironment.Get(name); } catch (ext::Exception) { return ext::String(); } }
35 +        } env;
36 +        struct Item;
37          std::multimap<std::string, std::string> cgi;
38          void parse();
39          void headings(xml::TextWriter& xhtml);
40          void form(xml::TextWriter& xhtml);
41 +        void output(xml::TextWriter& xhtml);
42 +        template <typename Type> void output(xml::TextWriter& xhtml, const Item& item, size_t index);
43 +        template <typename Type> Type input(const Item& item);
44 +        template <typename Type> void normal(xml::TextWriter& xhtml, const Type& type);
45 +        template <typename Type> void binary(xml::TextWriter& xhtml, const Type& type);
46 +        template <typename Type> void hexadecimal(xml::TextWriter& xhtml, const Type& type);
47   public:
48          Represent();
49   };

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines