// CSV_line.es.h    (C) 2008 adolfo@di-mare.com

#ifdef Spanish_dox
    /// Documentacin en espaol.
    #define Spanish_dox "Documentacin en espaol"
   /// \def Spanish_dox  ///< Marca bloques de documentacin en espaol.
#endif

/*  \file  CSV_line.es.h
    \brief Documentacin en espaol para \c CSV_line.h.
    \author Adolfo Di Mare <adolfo@di-mare.com>
    \date   2008
*/

/** \file  CSV_line.h
    \brief Empaque C++ para la clase \c CSV.h.
    \author Adolfo Di Mare <adolfo@di-mare.com>
    \date   2008
*/

#ifndef CSV_line_h
#define CSV_line_h ///< Evita la inclusin mltiple.

#include "CSV.h"

/** \class CSV_line
    \brief Usa \c getNextCSV() para extraer todos los campos CSV de un rengln.
    - \c CSV_line es un empaque C++ alrededor de la funcin \c getNextCSV().
    - Esta clase est derivada de \c std::vector<std::string> y por lo
      tanto tiene todas las operacioness e interfaces de un vector.
*/

/// \class   test_CSV;
/// \brief   Datos de prueba para \c CSV_line.

/// \fn    inline CSV_line::CSV_line();
/// \brief Constructor.

/// \fn    inline CSV_line::CSV_line( const CSV_line & );
/// \brief Constructor de copia.

/// \fn    inline CSV_line::CSV_line( const std::string & str )
/// \brief Constructor a partir de la hilera \c str.

/// \fn    inline CSV_line::CSV_line( const char *pz_str , size_t n );
/// \brief Constructor a partir de la hilera \c pz_str.

/** \fn    void CSV_line::setData( const char *pz_str , size_t n );
    \brief Procesa el rengln \c pz_str para extraerle todos los campos CSV.
    - Si <code> n <= 0 </code> calcula la longitud de \c pz_str con \c strlen().
    - Procesa hasta \c n caracteres en \c pz_str [ incluso \c char(0) ].
    - Si aparece un caracter \c "\n" (line feed) en un lugar incorrecto es
      interpretado como el como el separador de campo comma \c ",".
    - Remueve el separador \c "\n" del ltimo campo CSV.
    - Remueve del ltimo campo CSV el marcador \c "\r\n" de fin de rengln.

    \dontinclude test_CSV.cpp
    \skipline    test::setData()
    \until       }}
    \see         test_CSV::test_setData()
*/

/** \fn    int CSV_line::setData( const std::string & str );
    \brief Procesa el rengln \c str para extraerle todos los campos CSV.
    - Detiene el anlisis de \c str cuando un campo termina en \c "\n" (line feed).
    - Procesa hasta \c str.length() caracteres en \c str [ incluso \c char(0) ].
    - Si aparece un caracter \c "\n" (line feed) en un lugar incorrecto es
      interpretado como el como el separador de campo comma \c ",".
    - Remueve el separador \c "\n" del ltimo campo CSV.
    - Remueve del ltimo campo CSV el marcador \c "\r\n" de fin de rengln.

    \dontinclude test_CSV.cpp
    \skipline    test::setData()
    \until       }}
    \see         test_CSV::test_setData()
*/

/// Definido por la biblioteca estndar C++.
namespace std { } // truco para que Doxygen lo documente

#endif

// EOF: CSV_line.es.h
