| 1296 | } |
| 1297 | |
| 1298 | void gsoner::parse_code(void) |
| 1299 | { |
| 1300 | //char c = '\n'; |
| 1301 | max_pos_ = (int) codes_.size(); |
| 1302 | try |
| 1303 | { |
| 1304 | do |
| 1305 | { |
| 1306 | skip_space_comment(); |
| 1307 | if(pos_ == max_pos_) { |
| 1308 | break; |
| 1309 | } |
| 1310 | |
| 1311 | char ch = codes_[pos_]; |
| 1312 | if (ch == ';') { |
| 1313 | pos_++; |
| 1314 | continue; |
| 1315 | } |
| 1316 | if (ch == '/') { |
| 1317 | if (check_comment()) { |
| 1318 | continue; |
| 1319 | } |
| 1320 | } |
| 1321 | if (ch == '}') { |
| 1322 | if(check_struct_end()) { |
| 1323 | continue; |
| 1324 | } |
| 1325 | if(check_namespace_end()) { |
| 1326 | continue; |
| 1327 | } |
| 1328 | } |
| 1329 | if (ch == 'n') { |
| 1330 | if(check_namespace()) { |
| 1331 | continue; |
| 1332 | } |
| 1333 | } |
| 1334 | if (ch == '#') { |
| 1335 | if(check_include()) { |
| 1336 | continue; |
| 1337 | } |
| 1338 | if(check_define()) { |
| 1339 | continue; |
| 1340 | } |
| 1341 | if(check_pragma()) { |
| 1342 | continue; |
| 1343 | } |
| 1344 | } |
| 1345 | if (ch == 's') { |
| 1346 | if(check_struct_begin()) { |
| 1347 | continue; |
| 1348 | } |
| 1349 | } |
| 1350 | if (ch == 'u') { |
| 1351 | if (check_use_namespace()) { |
| 1352 | continue; |
| 1353 | } |
| 1354 | } |
| 1355 | if(check_function()) { |