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

# User Rev Content
1 douglas 370 // 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 douglas 384 #include <menes-api/environment.hpp>
18 douglas 370 #include <menes-ios/string.hpp>
19 douglas 379 #include <menes-xml/textwriter.hpp>
20 douglas 370
21 douglas 379 #include <map>
22 douglas 385 #include <set>
23 douglas 373
24 douglas 387 #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 douglas 389 struct Item;
30    
31 douglas 370 class Represent
32     {
33     private:
34 douglas 379 std::multimap<std::string, std::string> cgi;
35     void parse();
36 douglas 393 std::string decode(const ext::String& encoded);
37 douglas 380 void headings(xml::TextWriter& xhtml);
38     void form(xml::TextWriter& xhtml);
39 douglas 385 void output(xml::TextWriter& xhtml);
40 douglas 387 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 douglas 370 public:
46     Represent();
47     };
48    
49     #endif // _Represent_hpp_

Properties

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