ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/repos/Represent/Represent.hpp
Revision: 393
Committed: 2004-12-24T22:32:04-08:00 (20 years, 5 months ago) by douglas
File size: 1249 byte(s)
Log Message:
Worky, worky!

File Contents

# Content
1 // Represent
2 //
3 // Douglas Thrift
4 //
5 // $Id$
6
7 #ifndef _Represent_hpp_
8 #define _Represent_hpp_
9
10 #include <menes/platform.hpp>
11
12 #ifdef MENES_PRAGMA_ONCE
13 #pragma once
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 struct Item;
30
31 class Represent
32 {
33 private:
34 std::multimap<std::string, std::string> cgi;
35 void parse();
36 std::string decode(const ext::String& encoded);
37 void headings(xml::TextWriter& xhtml);
38 void form(xml::TextWriter& xhtml);
39 void output(xml::TextWriter& xhtml);
40 template <typename Type> void output(xml::TextWriter& xhtml, const Item& item, size_t index);
41 template <typename Type> Type input(const Item& item);
42 template <typename Type> void normal(xml::TextWriter& xhtml, const Type& type);
43 template <typename Type> void binary(xml::TextWriter& xhtml, const Type& type);
44 template <typename Type> void hexadecimal(xml::TextWriter& xhtml, const Type& type);
45 public:
46 Represent();
47 };
48
49 #endif // _Represent_hpp_

Properties

Name Value
svn:eol-style native
svn:keywords Id