The namespace containing the cgicc library. More...
Classes | |
class | Cgicc |
The main class of the GNU cgicc library. More... | |
class | CgiEnvironment |
Class encapsulating the CGI runtime environment. More... | |
class | CgiInput |
Class that abstracts a data source. More... | |
class | comment |
An HTML comment. More... | |
class | FormEntry |
Class representing a single HTML form entry. More... | |
class | FormFile |
Class representing a file submitted via an HTML form. More... | |
class | HTMLAtomicElement |
Template for concrete atomic HTMLElement subclasses. More... | |
class | HTMLAttribute |
Class representing a name or a single name/value pair. More... | |
class | HTMLAttributeList |
An expandable list of HTMLAttribute objects. More... | |
class | HTMLBooleanElement |
Template for concrete boolean HTMLElement subclasses. More... | |
class | HTMLDoctype |
Specifies the DTD of the HTML 4 document. More... | |
class | HTMLElement |
Class representing an HTML element. More... | |
class | HTMLElementList |
An expandable list of HTMLElement objects. More... | |
class | HTTPContentHeader |
HTTP header for data of a specified MIME type. More... | |
class | HTTPCookie |
An HTTP cookie. More... | |
class | HTTPHeader |
Abstract base class for all simple HTTP response headers. More... | |
class | HTTPHTMLHeader |
Shortcut to HTTPContentHeader for text/html . More... | |
class | HTTPPlainHeader |
Shortcut to HTTPContentHeader for text/html . More... | |
class | HTTPRedirectHeader |
Class for redirecting the client to a different URI. More... | |
class | HTTPResponseHeader |
Generic HTTP response header. More... | |
class | HTTPStatusHeader |
HTTP header to set a specific request status. More... | |
class | HTTPXHTMLHeader |
Class that abstracts a XHTML Content Header. More... | |
class | MStreamable |
Mix-in streamable interface. More... | |
class | nullTag |
class | XHTMLDoctype |
Class that abstracts a XHTML Doc Type. More... | |
class | XMLDeclaration |
Class that abstracts a XMLDeclaration. More... | |
class | XMLPI |
Class that abstracts a XMLPI. More... | |
Typedefs | |
typedef std::vector< FormEntry >::iterator | form_iterator |
A vector of FormEntry objects. | |
typedef std::vector< FormEntry >::const_iterator | const_form_iterator |
A vector of const FormEntry objects. | |
typedef std::vector< FormFile >::iterator | file_iterator |
A vector of FormFile objects. | |
typedef std::vector< FormFile >::const_iterator | const_file_iterator |
A vector of const FormFile objects. | |
typedef std::vector< HTTPCookie >::iterator | cookie_iterator |
A vector of HTTPCookie objects. | |
typedef std::vector< HTTPCookie >::const_iterator | const_cookie_iterator |
A vector of const HTTPCookie objects. | |
Functions | |
bool | stringsAreEqual (const std::string &s1, const std::string &s2) |
Compare two strings for equality, ignoring case. | |
bool | stringsAreEqual (const std::string &ss1, const std::string &ss2, size_t n) |
Compare two strings for equality, ignoring case. | |
std::string | form_urldecode (const std::string &src) |
Convert encoded characters in form data to normal ASCII. | |
std::string | form_urlencode (const std::string &src) |
Convert an ASCII string to a URL-safe string. | |
std::string | charToHex (char c) |
Convert an ASCII character to its hexadecimal equivalent. | |
char | hexToChar (char first, char second) |
Convert a hex-encoded character to its ASCII equivalent. | |
std::string | extractBetween (const std::string &data, const std::string &separator1, const std::string &separator2) |
Extract a substring contained within two separators. | |
std::string | extractBetween (const std::string &datas, const std::string &separators) |
Extract a substring contained between a separator. | |
void | writeString (std::ostream &out, const std::string &s) |
Write a string to an ostream. | |
void | writeLong (std::ostream &out, unsigned long l) |
Write a long to an ostream. | |
std::string | readString (std::istream &in) |
Read a string from an istream. | |
unsigned long | readLong (std::istream &in) |
Read a long from an istream. | |
HTMLAttributeList | set (const std::string &name) |
Create a new HTMLAttributeList, and set an HTMLAttribute. | |
HTMLAttributeList | set (const std::string &name, const std::string &value) |
Create a new HTMLAttributeList, and set an HTMLAttribute. | |
BOOLEAN_ELEMENT (html, "html") | |
BOOLEAN_ELEMENT (head, "head") | |
BOOLEAN_ELEMENT (title, "title") | |
ATOMIC_ELEMENT (meta, "meta") | |
BOOLEAN_ELEMENT (style, "style") | |
BOOLEAN_ELEMENT (body, "body") | |
BOOLEAN_ELEMENT (div, "div") | |
BOOLEAN_ELEMENT (span, "span") | |
BOOLEAN_ELEMENT (h1, "h1") | |
BOOLEAN_ELEMENT (h2, "h2") | |
BOOLEAN_ELEMENT (h3, "h3") | |
BOOLEAN_ELEMENT (h4, "h4") | |
BOOLEAN_ELEMENT (h5, "h5") | |
BOOLEAN_ELEMENT (h6, "h6") | |
BOOLEAN_ELEMENT (address, "address") | |
BOOLEAN_ELEMENT (em, "em") | |
BOOLEAN_ELEMENT (strong, "strong") | |
BOOLEAN_ELEMENT (cite, "cite") | |
BOOLEAN_ELEMENT (dfn, "dfn") | |
BOOLEAN_ELEMENT (code, "code") | |
BOOLEAN_ELEMENT (samp, "samp") | |
BOOLEAN_ELEMENT (kbd, "kbd") | |
BOOLEAN_ELEMENT (var, "var") | |
BOOLEAN_ELEMENT (abbr, "abbr") | |
BOOLEAN_ELEMENT (acronym, "acronym") | |
BOOLEAN_ELEMENT (blockquote, "blockquote") | |
BOOLEAN_ELEMENT (q, "q") | |
BOOLEAN_ELEMENT (sub, "sub") | |
BOOLEAN_ELEMENT (sup, "sup") | |
BOOLEAN_ELEMENT (p, "p") | |
ATOMIC_ELEMENT (br, "br") | |
BOOLEAN_ELEMENT (pre, "pre") | |
BOOLEAN_ELEMENT (ins, "ins") | |
BOOLEAN_ELEMENT (del, "del") | |
BOOLEAN_ELEMENT (bdo, "bdo") | |
BOOLEAN_ELEMENT (ul, "ul") | |
BOOLEAN_ELEMENT (ol, "ol") | |
BOOLEAN_ELEMENT (li, "li") | |
BOOLEAN_ELEMENT (dl, "dl") | |
BOOLEAN_ELEMENT (dt, "dt") | |
BOOLEAN_ELEMENT (dd, "dd") | |
BOOLEAN_ELEMENT (table, "table") | |
BOOLEAN_ELEMENT (caption, "caption") | |
BOOLEAN_ELEMENT (thead, "thead") | |
BOOLEAN_ELEMENT (tfoot, "tfoot") | |
BOOLEAN_ELEMENT (tbody, "tbody") | |
BOOLEAN_ELEMENT (colgroup, "colgroup") | |
ATOMIC_ELEMENT (col, "col") | |
BOOLEAN_ELEMENT (tr, "tr") | |
BOOLEAN_ELEMENT (th, "th") | |
BOOLEAN_ELEMENT (td, "td") | |
BOOLEAN_ELEMENT (a, "a") | |
ATOMIC_ELEMENT (link, "link") | |
ATOMIC_ELEMENT (base, "base") | |
ATOMIC_ELEMENT (img, "img") | |
BOOLEAN_ELEMENT (object, "object") | |
ATOMIC_ELEMENT (param, "param") | |
BOOLEAN_ELEMENT (map, "map") | |
ATOMIC_ELEMENT (area, "area") | |
ATOMIC_ELEMENT (hr, "hr") | |
BOOLEAN_ELEMENT (tt, "tt") | |
BOOLEAN_ELEMENT (i, "i") | |
BOOLEAN_ELEMENT (b, "b") | |
BOOLEAN_ELEMENT (big, "big") | |
BOOLEAN_ELEMENT (small, "small") | |
BOOLEAN_ELEMENT (frameset, "frameset") | |
ATOMIC_ELEMENT (frame, "frame") | |
BOOLEAN_ELEMENT (noframes, "noframes") | |
BOOLEAN_ELEMENT (iframe, "iframe") | |
BOOLEAN_ELEMENT (form, "form") | |
ATOMIC_ELEMENT (input, "input") | |
BOOLEAN_ELEMENT (button, "button") | |
BOOLEAN_ELEMENT (select, "select") | |
BOOLEAN_ELEMENT (optgroup, "optgroup") | |
BOOLEAN_ELEMENT (option, "option") | |
BOOLEAN_ELEMENT (textarea, "textarea") | |
BOOLEAN_ELEMENT (label, "label") | |
BOOLEAN_ELEMENT (fieldset, "fieldset") | |
BOOLEAN_ELEMENT (legend, "legend") | |
BOOLEAN_ELEMENT (script, "script") | |
BOOLEAN_ELEMENT (noscript, "noscript") | |
std::ostream & | operator<< (std::ostream &out, const MStreamable &obj) |
The namespace containing the cgicc library.
The namespace containing all classes and functions of the GNU cgicc library.
typedef std::vector<HTTPCookie>::const_iterator cgicc::const_cookie_iterator |
A vector of const
HTTPCookie objects.
Definition at line 62 of file CgiEnvironment.h.
typedef std::vector<FormFile>::const_iterator cgicc::const_file_iterator |
typedef std::vector<FormEntry>::const_iterator cgicc::const_form_iterator |
typedef std::vector<HTTPCookie>::iterator cgicc::cookie_iterator |
A vector of HTTPCookie objects.
Definition at line 60 of file CgiEnvironment.h.
typedef std::vector<FormFile>::iterator cgicc::file_iterator |
typedef std::vector<FormEntry>::iterator cgicc::form_iterator |
std::string cgicc::charToHex | ( | char | c | ) |
Convert an ASCII character to its hexadecimal equivalent.
For example, after the call
s
will have a value of "3A". Normally, this is called internally to encode characters by escapeString.
c | The character to encode |
std::string cgicc::extractBetween | ( | const std::string & | data, |
const std::string & | separator1, | ||
const std::string & | separator2 | ||
) |
Extract a substring contained within two separators.
For example, after the call
res
will be "foo".
data | The data to search. |
separator1 | The first logical separator. |
separator2 | The second logical separator. |
Referenced by extractBetween().
|
inline |
Extract a substring contained between a separator.
This function is used internally to decode multipart/form-data
data | The data to search. |
separator | The separator. |
Definition at line 160 of file CgiUtils.h.
References extractBetween().
std::string cgicc::form_urldecode | ( | const std::string & | src | ) |
Convert encoded characters in form data to normal ASCII.
For example, "%21" is converted to '!' and '+' is converted to a space. Normally, this is called internally to decode the query string or post data.
src | The src string containing the encoded characters |
std::string cgicc::form_urlencode | ( | const std::string & | src | ) |
Convert an ASCII string to a URL-safe string.
For example, '!' is converted to "%21" and ' ' is converted to '+'.
src | The src string containing the characters to encode |
char cgicc::hexToChar | ( | char | first, |
char | second | ||
) |
Convert a hex-encoded character to its ASCII equivalent.
For example, after the call
c
will have a value of '!'. Normally, this is called internally to decode encoded characters in the query string or post data.
first | The first hex digit |
second | The second hex digit |
std::ostream & cgicc::operator<< | ( | std::ostream & | out, |
const MStreamable & | obj | ||
) |
Prototype for overloading streaming operator
out | The ostream to which to write |
obj | The MStreamable object to write |
out
unsigned long cgicc::readLong | ( | std::istream & | in | ) |
Read a long from an istream.
This function is used internally by cgicc for restoring environments.
in | The istream from which to read. |
std::string cgicc::readString | ( | std::istream & | in | ) |
Read a string from an istream.
This function is used internally by cgicc for restoring environments.
in | The istream from which to read. |
|
inline |
Create a new HTMLAttributeList, and set an HTMLAttribute.
This function is usually called from within the constructor of an HTMLElement:
name | The name of the HTMLAttribute to set. |
Definition at line 189 of file HTMLAttributeList.h.
|
inline |
Create a new HTMLAttributeList, and set an HTMLAttribute.
This function is usually called from within the constructor of an HTMLElement:
name | The name of the HTMLAttribute to set. |
value | The value of the HTMLAttribute to set. |
Definition at line 205 of file HTMLAttributeList.h.
bool cgicc::stringsAreEqual | ( | const std::string & | s1, |
const std::string & | s2 | ||
) |
Compare two strings for equality, ignoring case.
For case-sensitive comparison, use (s1 == s2);
s1 | The first string to compare |
s2 | The second string to compare |
true
if the strings are equal, false
if they are not Referenced by cgicc::FormEntry::operator==().
bool cgicc::stringsAreEqual | ( | const std::string & | ss1, |
const std::string & | ss2, | ||
size_t | n | ||
) |
Compare two strings for equality, ignoring case.
For case-sensitive comparison, use (s1 == s2);
s1 | The first string to compare |
s2 | The second string to compare |
n | The number of characters to compare. |
true
if the strings are equal, false
if they are not void cgicc::writeLong | ( | std::ostream & | out, |
unsigned long | l | ||
) |
Write a long to an ostream.
This function is used internally for saving environments.
out | The ostream to which to write. |
l | The long to write. |
void cgicc::writeString | ( | std::ostream & | out, |
const std::string & | s | ||
) |
Write a string to an ostream.
This function is used internally for saving environments.
out | The ostream to which to write. |
s | The string to write. |