@@ -129,7 +129,12 @@ QString CCFGRule::ToString() const
129
129
foreach (const CSymbol& symbol, m_rightString){
130
130
switch (symbol.GetType ()) {
131
131
case CSymbol::TType::terminal:
132
- ruleString += QString (" \" %1\" " ).arg (symbol.GetString ());
132
+ if (symbol.GetString () == EPSILON) {
133
+ ruleString += QString (" %1 " ).arg (symbol.GetString ());
134
+ }
135
+ else {
136
+ ruleString += QString (" \" %1\" " ).arg (symbol.GetString ());
137
+ }
133
138
break ;
134
139
case CSymbol::TType::nonTerminal:
135
140
ruleString += QString (" <%1> " ).arg (symbol.GetString ());
@@ -205,26 +210,6 @@ QString CContextFreeGrammar::NonTerminalAlphabetToString() const
205
210
return result.left (result.length () - 2 );
206
211
}
207
212
208
- // QSet<CTerminal> CContextFreeGrammar::GetTerminalAlphabet()
209
- // {
210
- // QSet<QString> outSet;
211
- // foreach(CTerminal terminal, m_terminalsAlphabet)
212
- // {
213
- // outSet.insert(terminal.GetString());
214
- // }
215
- // return outSet;
216
- // }
217
-
218
- // QSet<CNonTerminal> CContextFreeGrammar::GetNoonTerminalAlphabet()
219
- // {
220
- // QSet<QString> outSet;
221
- // foreach(CNonTerminal nonTerminal, m_nonterminalsAlphabet)
222
- // {
223
- // outSet.insert(nonTerminal.GetString());
224
- // }
225
- // return outSet;
226
- // }
227
-
228
213
QSet<QString> CContextFreeGrammar::GetBothTerminalAndNonterminalAlphabet ()
229
214
{
230
215
QSet<QString> terninals = CTerminal::CTerminalQSetToQStringQSet (GetTerminalAlphabet ());
@@ -385,7 +370,7 @@ QDataStream& CSymbol::WriteToQDataStream(QDataStream & out) const
385
370
QDataStream& CSymbol::ReadFromQDataStream (QDataStream & in)
386
371
{
387
372
quint32 tmpType;
388
- in >> m_symbol >> tmpType ;
373
+ in >> tmpType >> m_symbol ;
389
374
m_type = (TType)tmpType;
390
375
return in;
391
376
}
@@ -400,7 +385,7 @@ QDataStream & operator<<(QDataStream & out, const CTerminal & s)
400
385
return s.WriteToQDataStream (out);
401
386
}
402
387
403
- QDataStream & operator >> (QDataStream & in, CNonTerminal & s)
388
+ QDataStream & operator >> (QDataStream & in, CNonTerminal & s)
404
389
{
405
390
return s.ReadFromQDataStream (in);
406
391
}
0 commit comments