EgtGeneral 1.5e2 :

- CmdScanner ora accetta '//' come segno di continuazione sulla linea successiva.
This commit is contained in:
Dario Sassi
2014-05-27 16:04:37 +00:00
parent f988de2250
commit 9aeb86804b
3 changed files with 26 additions and 3 deletions
+23 -3
View File
@@ -1,14 +1,14 @@
//----------------------------------------------------------------------------
// EgalTech 2013-2013
// EgalTech 2013-2014
//----------------------------------------------------------------------------
// File : CmdScanner.cpp Data : 25.11.13 Versione : 1.3a1
// File : CmdScanner.cpp Data : 27.05.14 Versione : 1.5e2
// Contenuto : Implementazione della classe CmdScanner.
// Scansione di file di testo con codifica UTF-8 (anche con BOM)
// e quindi anche ASCII.
//
//
// Modifiche : 19.01.13 DS Creazione modulo.
//
// 27.05.14 DS Agg. gestione continuazione linea con carattere '\\' alla fine.
//
//----------------------------------------------------------------------------
@@ -67,7 +67,27 @@ CmdScanner::GetLine( string& sLine)
{
if ( ! m_CmdFile.is_open())
return false ;
// leggu una linea
if ( ! GetSingleLine( sLine))
return false ;
// mentre alla fine c'è il carattere di continuazione, leggo la successiva
string sCont ;
while ( ! sLine.empty() && sLine.back() == '\\') {
// elimino il carattere di continuazione linea
sLine.pop_back() ;
// leggo la linea successiva
if ( GetSingleLine( sCont))
sLine += sCont ;
else
break ;
}
return true ;
}
//----------------------------------------------------------------------------
bool
CmdScanner::GetSingleLine( string& sLine)
{
do {
if ( ! getline( m_CmdFile, sLine))
return false ;