TFCweb
1.0.4 $Rev: 483 $
TFC Primavera 2012: Nucli d'un servidor web
|
Funcions de suport vàries. Més...
#include "portabilitat.h"
#include <istream>
#include <sstream>
#include <string>
#include <ostream>
#include <boost/bind.hpp>
#include <boost/date_time.hpp>
#include <boost/filesystem.hpp>
#include <boost/function.hpp>
Veure el codi d'aquest fitxer.
Classes | |
class | Es_Pair_De_Strings< T > |
Restricció (constraint): T respon a la interfície de std::pair<std::string, std::string> Més... | |
class | Es_Pot_Cridar_Sense_Arguments< T > |
Restricció (constraint): T es pot cridar com si fós una funció amb la signatura void (void) Més... | |
class | Te_Operador_Extraccio< T, TOrigen > |
Restricció (constraint): T té definit l'operador d'extracció (>> ) sobre objectes del tipus TOrigen . Més... | |
class | Te_Operador_Insercio< T, TDesti > |
Restricció (constraint): T té definit l'operador d'inserció (<< ) sobre objectes de tipus TDesti . Més... |
Espais de Noms | |
namespace | tfc |
Espai de noms del Treball de Final de Carrera. | |
namespace | tfc::utils |
Funcions i algorismes de suport. | |
namespace | tfc::utils::impl |
Detalls d'implementació |
Definicions de Tipus | |
typedef std::ios_base &( | manipulador_ios_base_t )(std::ios_base &) |
Tipus dels manipuladors de std::ios_base . | |
typedef boost::function < std::ostream &(std::ostream &)> | manipulador_ostream_t |
Tipus compatible de manipuladors de std::ostream . |
Funcions | |
template<typename Iterador , typename Separador = std::string> | |
std::ostream & | each_shl (std::ostream &os, Iterador ini, Iterador fi, const Separador &sep) |
template<typename Iterador , typename Separador = std::string> | |
std::ostream & | each_shl (std::ostream &os, Iterador ini, Iterador fi, const Separador &sep="\n") |
Impressió de contenidors. | |
template<typename Iterador , typename Separador = std::string> | |
manipulador_ostream_t | each_shl (Iterador ini, Iterador fi, const Separador &sep="\n") |
Impressió de contenidors amb destí implícit. | |
template<typename Contenidor , typename Separador = std::string> | |
manipulador_ostream_t | each_shl (const Contenidor &c, const Separador &sep="\n") |
Impressió de contenidors amb destí implícit. | |
bool | es_canonic (const boost::filesystem::path &p) throw () |
Comprova si una ruta és canònica. | |
bool | es_llegible (const boost::filesystem::path &p) throw () |
Comprova si un fitxer o directori és llegible. | |
template<typename Str > | |
const Str::value_type | final (const Str &s) |
Obté el darrer element d'una col·lecció. | |
string | formata_data (const boost::posix_time::ptime &t, const std::string &fmt) |
Formata una hora/data. | |
string | formata_data (const std::time_t t, const std::string &fmt) |
Formata una hora/data. | |
std::string | formata_data (const std::string &fmt) |
Formata la hora/data actual. | |
template<typename T > | |
T | from_string (const std::string &s, manipulador_ios_base_t base=std::dec) |
Extreu un valor de la cadena s . | |
string | lpad (const std::string &s, size_t mida, char f= ' ') |
Amplia una cadena per l'esquerra. | |
std::ostream & | operator<< (std::ostream &os, tfc::utils::manipulador_ostream_t fn) |
Inserció de manipuladors d'ostream amb signatures basades en boost::function . | |
string | rpad (const std::string &s, size_t mida, char f= ' ') |
Amplia una cadena per la dreta. | |
template<typename T > | |
std::string | to_string (const T &obj, manipulador_ios_base_t base=std::dec) |
Obté la representació en forma de cadena d'un objecte. |
std::ostream& operator<< | ( | std::ostream & | os, |
tfc::utils::manipulador_ostream_t | fn | ||
) |
Inserció de manipuladors d'ostream amb signatures basades en boost::function
.
Encara que la signatura de manipulador_ostream_t és compatible amb els manipuladors d'ostream's, cal definir l'operador d'inserció que els executi, altrament s'imprimirà l'objecte "boost::function" corresponent (produïnt la cadena "1")