| 195 | } |
| 196 | |
| 197 | void CDLParser::Impl::parse(std::istream & istream) |
| 198 | { |
| 199 | reset(); |
| 200 | |
| 201 | const std::string header(loadHeader(istream)); |
| 202 | initializeHandlers(header.c_str()); |
| 203 | |
| 204 | std::string line; |
| 205 | m_lineNumber = 0; |
| 206 | while (istream.good()) |
| 207 | { |
| 208 | std::getline(istream, line); |
| 209 | line.push_back('\n'); |
| 210 | ++m_lineNumber; |
| 211 | |
| 212 | parse(line, !istream.good()); |
| 213 | } |
| 214 | |
| 215 | validateParsing(); |
| 216 | } |
| 217 | |
| 218 | void CDLParser::Impl::throwMessage(const std::string & error) const |
| 219 | { |
no test coverage detected