00001
00002
00003 #ifndef lestes__lang__cplus__sem__ss_decl_name_visitor_v_g_hh__included
00004 #define lestes__lang__cplus__sem__ss_decl_name_visitor_v_g_hh__included
00005
00006 #include <lestes/common.hh>
00007 #include <lestes/std/visitor_base.hh>
00008 #include <lestes/lang/cplus/sem/ss_misc.g.hh>
00009
00010 #include <lestes/std/objectize_macros.hh>
00011 package(lestes);
00012 package(lang);
00013 package(cplus);
00014 package(sem);
00015 class ss_decl_name;
00016 end_package(sem);
00017 end_package(cplus);
00018 end_package(lang);
00019 end_package(lestes);
00020
00021 package(lestes);
00022 package(lang);
00023 package(cplus);
00024 package(sem);
00025 class ss_ordinary_name;
00026 end_package(sem);
00027 end_package(cplus);
00028 end_package(lang);
00029 end_package(lestes);
00030
00031 package(lestes);
00032 package(lang);
00033 package(cplus);
00034 package(sem);
00035 class ss_conversion_name;
00036 end_package(sem);
00037 end_package(cplus);
00038 end_package(lang);
00039 end_package(lestes);
00040
00041 package(lestes);
00042 package(lang);
00043 package(cplus);
00044 package(sem);
00045 class ss_operator;
00046 end_package(sem);
00047 end_package(cplus);
00048 end_package(lang);
00049 end_package(lestes);
00050
00051 package(lestes);
00052 package(lang);
00053 package(cplus);
00054 package(sem);
00055 class ss_dummy_name;
00056 end_package(sem);
00057 end_package(cplus);
00058 end_package(lang);
00059 end_package(lestes);
00060
00061 package(lestes);
00062 package(lang);
00063 package(cplus);
00064 package(sem);
00065 class ss_operator_new;
00066 end_package(sem);
00067 end_package(cplus);
00068 end_package(lang);
00069 end_package(lestes);
00070
00071 package(lestes);
00072 package(lang);
00073 package(cplus);
00074 package(sem);
00075 class ss_operator_delete;
00076 end_package(sem);
00077 end_package(cplus);
00078 end_package(lang);
00079 end_package(lestes);
00080
00081 package(lestes);
00082 package(lang);
00083 package(cplus);
00084 package(sem);
00085 class ss_operator_new_array;
00086 end_package(sem);
00087 end_package(cplus);
00088 end_package(lang);
00089 end_package(lestes);
00090
00091 package(lestes);
00092 package(lang);
00093 package(cplus);
00094 package(sem);
00095 class ss_operator_delete_array;
00096 end_package(sem);
00097 end_package(cplus);
00098 end_package(lang);
00099 end_package(lestes);
00100
00101 package(lestes);
00102 package(lang);
00103 package(cplus);
00104 package(sem);
00105 class ss_operator_add;
00106 end_package(sem);
00107 end_package(cplus);
00108 end_package(lang);
00109 end_package(lestes);
00110
00111 package(lestes);
00112 package(lang);
00113 package(cplus);
00114 package(sem);
00115 class ss_operator_sub;
00116 end_package(sem);
00117 end_package(cplus);
00118 end_package(lang);
00119 end_package(lestes);
00120
00121 package(lestes);
00122 package(lang);
00123 package(cplus);
00124 package(sem);
00125 class ss_operator_mul;
00126 end_package(sem);
00127 end_package(cplus);
00128 end_package(lang);
00129 end_package(lestes);
00130
00131 package(lestes);
00132 package(lang);
00133 package(cplus);
00134 package(sem);
00135 class ss_operator_div;
00136 end_package(sem);
00137 end_package(cplus);
00138 end_package(lang);
00139 end_package(lestes);
00140
00141 package(lestes);
00142 package(lang);
00143 package(cplus);
00144 package(sem);
00145 class ss_operator_mod;
00146 end_package(sem);
00147 end_package(cplus);
00148 end_package(lang);
00149 end_package(lestes);
00150
00151 package(lestes);
00152 package(lang);
00153 package(cplus);
00154 package(sem);
00155 class ss_operator_bxor;
00156 end_package(sem);
00157 end_package(cplus);
00158 end_package(lang);
00159 end_package(lestes);
00160
00161 package(lestes);
00162 package(lang);
00163 package(cplus);
00164 package(sem);
00165 class ss_operator_band;
00166 end_package(sem);
00167 end_package(cplus);
00168 end_package(lang);
00169 end_package(lestes);
00170
00171 package(lestes);
00172 package(lang);
00173 package(cplus);
00174 package(sem);
00175 class ss_operator_bor;
00176 end_package(sem);
00177 end_package(cplus);
00178 end_package(lang);
00179 end_package(lestes);
00180
00181 package(lestes);
00182 package(lang);
00183 package(cplus);
00184 package(sem);
00185 class ss_operator_bnot;
00186 end_package(sem);
00187 end_package(cplus);
00188 end_package(lang);
00189 end_package(lestes);
00190
00191 package(lestes);
00192 package(lang);
00193 package(cplus);
00194 package(sem);
00195 class ss_operator_lnot;
00196 end_package(sem);
00197 end_package(cplus);
00198 end_package(lang);
00199 end_package(lestes);
00200
00201 package(lestes);
00202 package(lang);
00203 package(cplus);
00204 package(sem);
00205 class ss_operator_assign;
00206 end_package(sem);
00207 end_package(cplus);
00208 end_package(lang);
00209 end_package(lestes);
00210
00211 package(lestes);
00212 package(lang);
00213 package(cplus);
00214 package(sem);
00215 class ss_operator_assign_add;
00216 end_package(sem);
00217 end_package(cplus);
00218 end_package(lang);
00219 end_package(lestes);
00220
00221 package(lestes);
00222 package(lang);
00223 package(cplus);
00224 package(sem);
00225 class ss_operator_assign_sub;
00226 end_package(sem);
00227 end_package(cplus);
00228 end_package(lang);
00229 end_package(lestes);
00230
00231 package(lestes);
00232 package(lang);
00233 package(cplus);
00234 package(sem);
00235 class ss_operator_assign_mul;
00236 end_package(sem);
00237 end_package(cplus);
00238 end_package(lang);
00239 end_package(lestes);
00240
00241 package(lestes);
00242 package(lang);
00243 package(cplus);
00244 package(sem);
00245 class ss_operator_assign_div;
00246 end_package(sem);
00247 end_package(cplus);
00248 end_package(lang);
00249 end_package(lestes);
00250
00251 package(lestes);
00252 package(lang);
00253 package(cplus);
00254 package(sem);
00255 class ss_operator_assign_mod;
00256 end_package(sem);
00257 end_package(cplus);
00258 end_package(lang);
00259 end_package(lestes);
00260
00261 package(lestes);
00262 package(lang);
00263 package(cplus);
00264 package(sem);
00265 class ss_operator_assign_bxor;
00266 end_package(sem);
00267 end_package(cplus);
00268 end_package(lang);
00269 end_package(lestes);
00270
00271 package(lestes);
00272 package(lang);
00273 package(cplus);
00274 package(sem);
00275 class ss_operator_assign_band;
00276 end_package(sem);
00277 end_package(cplus);
00278 end_package(lang);
00279 end_package(lestes);
00280
00281 package(lestes);
00282 package(lang);
00283 package(cplus);
00284 package(sem);
00285 class ss_operator_assign_bor;
00286 end_package(sem);
00287 end_package(cplus);
00288 end_package(lang);
00289 end_package(lestes);
00290
00291 package(lestes);
00292 package(lang);
00293 package(cplus);
00294 package(sem);
00295 class ss_operator_assign_shl;
00296 end_package(sem);
00297 end_package(cplus);
00298 end_package(lang);
00299 end_package(lestes);
00300
00301 package(lestes);
00302 package(lang);
00303 package(cplus);
00304 package(sem);
00305 class ss_operator_assign_shr;
00306 end_package(sem);
00307 end_package(cplus);
00308 end_package(lang);
00309 end_package(lestes);
00310
00311 package(lestes);
00312 package(lang);
00313 package(cplus);
00314 package(sem);
00315 class ss_operator_shr;
00316 end_package(sem);
00317 end_package(cplus);
00318 end_package(lang);
00319 end_package(lestes);
00320
00321 package(lestes);
00322 package(lang);
00323 package(cplus);
00324 package(sem);
00325 class ss_operator_shl;
00326 end_package(sem);
00327 end_package(cplus);
00328 end_package(lang);
00329 end_package(lestes);
00330
00331 package(lestes);
00332 package(lang);
00333 package(cplus);
00334 package(sem);
00335 class ss_operator_sbl;
00336 end_package(sem);
00337 end_package(cplus);
00338 end_package(lang);
00339 end_package(lestes);
00340
00341 package(lestes);
00342 package(lang);
00343 package(cplus);
00344 package(sem);
00345 class ss_operator_sbg;
00346 end_package(sem);
00347 end_package(cplus);
00348 end_package(lang);
00349 end_package(lestes);
00350
00351 package(lestes);
00352 package(lang);
00353 package(cplus);
00354 package(sem);
00355 class ss_operator_sbng;
00356 end_package(sem);
00357 end_package(cplus);
00358 end_package(lang);
00359 end_package(lestes);
00360
00361 package(lestes);
00362 package(lang);
00363 package(cplus);
00364 package(sem);
00365 class ss_operator_sbnl;
00366 end_package(sem);
00367 end_package(cplus);
00368 end_package(lang);
00369 end_package(lestes);
00370
00371 package(lestes);
00372 package(lang);
00373 package(cplus);
00374 package(sem);
00375 class ss_operator_sbe;
00376 end_package(sem);
00377 end_package(cplus);
00378 end_package(lang);
00379 end_package(lestes);
00380
00381 package(lestes);
00382 package(lang);
00383 package(cplus);
00384 package(sem);
00385 class ss_operator_sbne;
00386 end_package(sem);
00387 end_package(cplus);
00388 end_package(lang);
00389 end_package(lestes);
00390
00391 package(lestes);
00392 package(lang);
00393 package(cplus);
00394 package(sem);
00395 class ss_operator_land;
00396 end_package(sem);
00397 end_package(cplus);
00398 end_package(lang);
00399 end_package(lestes);
00400
00401 package(lestes);
00402 package(lang);
00403 package(cplus);
00404 package(sem);
00405 class ss_operator_lor;
00406 end_package(sem);
00407 end_package(cplus);
00408 end_package(lang);
00409 end_package(lestes);
00410
00411 package(lestes);
00412 package(lang);
00413 package(cplus);
00414 package(sem);
00415 class ss_operator_inc;
00416 end_package(sem);
00417 end_package(cplus);
00418 end_package(lang);
00419 end_package(lestes);
00420
00421 package(lestes);
00422 package(lang);
00423 package(cplus);
00424 package(sem);
00425 class ss_operator_dec;
00426 end_package(sem);
00427 end_package(cplus);
00428 end_package(lang);
00429 end_package(lestes);
00430
00431 package(lestes);
00432 package(lang);
00433 package(cplus);
00434 package(sem);
00435 class ss_operator_comma;
00436 end_package(sem);
00437 end_package(cplus);
00438 end_package(lang);
00439 end_package(lestes);
00440
00441 package(lestes);
00442 package(lang);
00443 package(cplus);
00444 package(sem);
00445 class ss_operator_access;
00446 end_package(sem);
00447 end_package(cplus);
00448 end_package(lang);
00449 end_package(lestes);
00450
00451 package(lestes);
00452 package(lang);
00453 package(cplus);
00454 package(sem);
00455 class ss_operator_access_member;
00456 end_package(sem);
00457 end_package(cplus);
00458 end_package(lang);
00459 end_package(lestes);
00460
00461 package(lestes);
00462 package(lang);
00463 package(cplus);
00464 package(sem);
00465 class ss_operator_function_call;
00466 end_package(sem);
00467 end_package(cplus);
00468 end_package(lang);
00469 end_package(lestes);
00470
00471 package(lestes);
00472 package(lang);
00473 package(cplus);
00474 package(sem);
00475 class ss_operator_array;
00476 end_package(sem);
00477 end_package(cplus);
00478 end_package(lang);
00479 end_package(lestes);
00480
00481 package(lestes);
00482 package(lang);
00483 package(cplus);
00484 package(sem);
00485 class ss_operator_ternary;
00486 end_package(sem);
00487 end_package(cplus);
00488 end_package(lang);
00489 end_package(lestes);
00490
00491 package(lestes);
00492 package(intercode);
00493 class intercode;
00494 end_package(intercode);
00495 end_package(lestes);
00496
00497 package(lestes);
00498 package(intercode);
00499 class as_base;
00500 end_package(intercode);
00501 end_package(lestes);
00502
00503 package(lestes);
00504 package(intercode);
00505 class ss_base;
00506 end_package(intercode);
00507 end_package(lestes);
00508
00509 package(lestes);
00510 package(intercode);
00511 class ss_base_with_location;
00512 end_package(intercode);
00513 end_package(lestes);
00514
00515 package(lestes);
00516 package(intercode);
00517 class pi_base;
00518 end_package(intercode);
00519 end_package(lestes);
00520
00521 package(lestes);
00522 package(lang);
00523 package(cplus);
00524 package(sem);
00525
00526
00527 class ss_decl_name_visitor;
00528 class ss_decl_name2lstring_base;
00529
00530
00531 class ss_decl_name_visitor : public ::lestes::std::visitor_base {
00532 public:
00533 virtual void visit_ss_ordinary_name(ptr< ::lestes::lang::cplus::sem::ss_ordinary_name > ) abstract;
00534
00535 virtual void visit_ss_conversion_name(ptr< ::lestes::lang::cplus::sem::ss_conversion_name > ) abstract;
00536
00537 virtual void visit_ss_dummy_name(ptr< ::lestes::lang::cplus::sem::ss_dummy_name > ) abstract;
00538
00539 virtual void visit_ss_operator_new(ptr< ::lestes::lang::cplus::sem::ss_operator_new > ) abstract;
00540
00541 virtual void visit_ss_operator_delete(ptr< ::lestes::lang::cplus::sem::ss_operator_delete > ) abstract;
00542
00543 virtual void visit_ss_operator_new_array(ptr< ::lestes::lang::cplus::sem::ss_operator_new_array > ) abstract;
00544
00545 virtual void visit_ss_operator_delete_array(ptr< ::lestes::lang::cplus::sem::ss_operator_delete_array > ) abstract;
00546
00547 virtual void visit_ss_operator_add(ptr< ::lestes::lang::cplus::sem::ss_operator_add > ) abstract;
00548
00549 virtual void visit_ss_operator_sub(ptr< ::lestes::lang::cplus::sem::ss_operator_sub > ) abstract;
00550
00551 virtual void visit_ss_operator_mul(ptr< ::lestes::lang::cplus::sem::ss_operator_mul > ) abstract;
00552
00553 virtual void visit_ss_operator_div(ptr< ::lestes::lang::cplus::sem::ss_operator_div > ) abstract;
00554
00555 virtual void visit_ss_operator_mod(ptr< ::lestes::lang::cplus::sem::ss_operator_mod > ) abstract;
00556
00557 virtual void visit_ss_operator_bxor(ptr< ::lestes::lang::cplus::sem::ss_operator_bxor > ) abstract;
00558
00559 virtual void visit_ss_operator_band(ptr< ::lestes::lang::cplus::sem::ss_operator_band > ) abstract;
00560
00561 virtual void visit_ss_operator_bor(ptr< ::lestes::lang::cplus::sem::ss_operator_bor > ) abstract;
00562
00563 virtual void visit_ss_operator_bnot(ptr< ::lestes::lang::cplus::sem::ss_operator_bnot > ) abstract;
00564
00565 virtual void visit_ss_operator_lnot(ptr< ::lestes::lang::cplus::sem::ss_operator_lnot > ) abstract;
00566
00567 virtual void visit_ss_operator_assign(ptr< ::lestes::lang::cplus::sem::ss_operator_assign > ) abstract;
00568
00569 virtual void visit_ss_operator_assign_add(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_add > ) abstract;
00570
00571 virtual void visit_ss_operator_assign_sub(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_sub > ) abstract;
00572
00573 virtual void visit_ss_operator_assign_mul(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_mul > ) abstract;
00574
00575 virtual void visit_ss_operator_assign_div(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_div > ) abstract;
00576
00577 virtual void visit_ss_operator_assign_mod(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_mod > ) abstract;
00578
00579 virtual void visit_ss_operator_assign_bxor(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_bxor > ) abstract;
00580
00581 virtual void visit_ss_operator_assign_band(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_band > ) abstract;
00582
00583 virtual void visit_ss_operator_assign_bor(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_bor > ) abstract;
00584
00585 virtual void visit_ss_operator_assign_shl(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_shl > ) abstract;
00586
00587 virtual void visit_ss_operator_assign_shr(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_shr > ) abstract;
00588
00589 virtual void visit_ss_operator_shr(ptr< ::lestes::lang::cplus::sem::ss_operator_shr > ) abstract;
00590
00591 virtual void visit_ss_operator_shl(ptr< ::lestes::lang::cplus::sem::ss_operator_shl > ) abstract;
00592
00593 virtual void visit_ss_operator_sbl(ptr< ::lestes::lang::cplus::sem::ss_operator_sbl > ) abstract;
00594
00595 virtual void visit_ss_operator_sbg(ptr< ::lestes::lang::cplus::sem::ss_operator_sbg > ) abstract;
00596
00597 virtual void visit_ss_operator_sbng(ptr< ::lestes::lang::cplus::sem::ss_operator_sbng > ) abstract;
00598
00599 virtual void visit_ss_operator_sbnl(ptr< ::lestes::lang::cplus::sem::ss_operator_sbnl > ) abstract;
00600
00601 virtual void visit_ss_operator_sbe(ptr< ::lestes::lang::cplus::sem::ss_operator_sbe > ) abstract;
00602
00603 virtual void visit_ss_operator_sbne(ptr< ::lestes::lang::cplus::sem::ss_operator_sbne > ) abstract;
00604
00605 virtual void visit_ss_operator_land(ptr< ::lestes::lang::cplus::sem::ss_operator_land > ) abstract;
00606
00607 virtual void visit_ss_operator_lor(ptr< ::lestes::lang::cplus::sem::ss_operator_lor > ) abstract;
00608
00609 virtual void visit_ss_operator_inc(ptr< ::lestes::lang::cplus::sem::ss_operator_inc > ) abstract;
00610
00611 virtual void visit_ss_operator_dec(ptr< ::lestes::lang::cplus::sem::ss_operator_dec > ) abstract;
00612
00613 virtual void visit_ss_operator_comma(ptr< ::lestes::lang::cplus::sem::ss_operator_comma > ) abstract;
00614
00615 virtual void visit_ss_operator_access(ptr< ::lestes::lang::cplus::sem::ss_operator_access > ) abstract;
00616
00617 virtual void visit_ss_operator_access_member(ptr< ::lestes::lang::cplus::sem::ss_operator_access_member > ) abstract;
00618
00619 virtual void visit_ss_operator_function_call(ptr< ::lestes::lang::cplus::sem::ss_operator_function_call > ) abstract;
00620
00621 virtual void visit_ss_operator_array(ptr< ::lestes::lang::cplus::sem::ss_operator_array > ) abstract;
00622
00623 virtual void visit_ss_operator_ternary(ptr< ::lestes::lang::cplus::sem::ss_operator_ternary > ) abstract;
00624
00625
00626
00627
00628 virtual ptr<reflection_list> reflection_get() const;
00629
00630 virtual ptr<field_list_list> field_values_get() const;
00631
00632 protected:
00633
00634 ss_decl_name_visitor (
00635 );
00636
00637
00638 virtual void gc_mark();
00639
00640 private:
00641 static ptr<reflection_list> reflection;
00642
00643 };
00644
00645
00646 class ss_decl_name2lstring_base : public ::lestes::std::visitor_base {
00647 public:
00648 virtual lstring visit_ss_ordinary_name(ptr< ::lestes::lang::cplus::sem::ss_ordinary_name > ) abstract;
00649
00650 virtual lstring visit_ss_conversion_name(ptr< ::lestes::lang::cplus::sem::ss_conversion_name > ) abstract;
00651
00652 virtual lstring visit_ss_dummy_name(ptr< ::lestes::lang::cplus::sem::ss_dummy_name > ) abstract;
00653
00654 virtual lstring visit_ss_operator_new(ptr< ::lestes::lang::cplus::sem::ss_operator_new > ) abstract;
00655
00656 virtual lstring visit_ss_operator_delete(ptr< ::lestes::lang::cplus::sem::ss_operator_delete > ) abstract;
00657
00658 virtual lstring visit_ss_operator_new_array(ptr< ::lestes::lang::cplus::sem::ss_operator_new_array > ) abstract;
00659
00660 virtual lstring visit_ss_operator_delete_array(ptr< ::lestes::lang::cplus::sem::ss_operator_delete_array > ) abstract;
00661
00662 virtual lstring visit_ss_operator_add(ptr< ::lestes::lang::cplus::sem::ss_operator_add > ) abstract;
00663
00664 virtual lstring visit_ss_operator_sub(ptr< ::lestes::lang::cplus::sem::ss_operator_sub > ) abstract;
00665
00666 virtual lstring visit_ss_operator_mul(ptr< ::lestes::lang::cplus::sem::ss_operator_mul > ) abstract;
00667
00668 virtual lstring visit_ss_operator_div(ptr< ::lestes::lang::cplus::sem::ss_operator_div > ) abstract;
00669
00670 virtual lstring visit_ss_operator_mod(ptr< ::lestes::lang::cplus::sem::ss_operator_mod > ) abstract;
00671
00672 virtual lstring visit_ss_operator_bxor(ptr< ::lestes::lang::cplus::sem::ss_operator_bxor > ) abstract;
00673
00674 virtual lstring visit_ss_operator_band(ptr< ::lestes::lang::cplus::sem::ss_operator_band > ) abstract;
00675
00676 virtual lstring visit_ss_operator_bor(ptr< ::lestes::lang::cplus::sem::ss_operator_bor > ) abstract;
00677
00678 virtual lstring visit_ss_operator_bnot(ptr< ::lestes::lang::cplus::sem::ss_operator_bnot > ) abstract;
00679
00680 virtual lstring visit_ss_operator_lnot(ptr< ::lestes::lang::cplus::sem::ss_operator_lnot > ) abstract;
00681
00682 virtual lstring visit_ss_operator_assign(ptr< ::lestes::lang::cplus::sem::ss_operator_assign > ) abstract;
00683
00684 virtual lstring visit_ss_operator_assign_add(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_add > ) abstract;
00685
00686 virtual lstring visit_ss_operator_assign_sub(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_sub > ) abstract;
00687
00688 virtual lstring visit_ss_operator_assign_mul(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_mul > ) abstract;
00689
00690 virtual lstring visit_ss_operator_assign_div(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_div > ) abstract;
00691
00692 virtual lstring visit_ss_operator_assign_mod(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_mod > ) abstract;
00693
00694 virtual lstring visit_ss_operator_assign_bxor(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_bxor > ) abstract;
00695
00696 virtual lstring visit_ss_operator_assign_band(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_band > ) abstract;
00697
00698 virtual lstring visit_ss_operator_assign_bor(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_bor > ) abstract;
00699
00700 virtual lstring visit_ss_operator_assign_shl(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_shl > ) abstract;
00701
00702 virtual lstring visit_ss_operator_assign_shr(ptr< ::lestes::lang::cplus::sem::ss_operator_assign_shr > ) abstract;
00703
00704 virtual lstring visit_ss_operator_shr(ptr< ::lestes::lang::cplus::sem::ss_operator_shr > ) abstract;
00705
00706 virtual lstring visit_ss_operator_shl(ptr< ::lestes::lang::cplus::sem::ss_operator_shl > ) abstract;
00707
00708 virtual lstring visit_ss_operator_sbl(ptr< ::lestes::lang::cplus::sem::ss_operator_sbl > ) abstract;
00709
00710 virtual lstring visit_ss_operator_sbg(ptr< ::lestes::lang::cplus::sem::ss_operator_sbg > ) abstract;
00711
00712 virtual lstring visit_ss_operator_sbng(ptr< ::lestes::lang::cplus::sem::ss_operator_sbng > ) abstract;
00713
00714 virtual lstring visit_ss_operator_sbnl(ptr< ::lestes::lang::cplus::sem::ss_operator_sbnl > ) abstract;
00715
00716 virtual lstring visit_ss_operator_sbe(ptr< ::lestes::lang::cplus::sem::ss_operator_sbe > ) abstract;
00717
00718 virtual lstring visit_ss_operator_sbne(ptr< ::lestes::lang::cplus::sem::ss_operator_sbne > ) abstract;
00719
00720 virtual lstring visit_ss_operator_land(ptr< ::lestes::lang::cplus::sem::ss_operator_land > ) abstract;
00721
00722 virtual lstring visit_ss_operator_lor(ptr< ::lestes::lang::cplus::sem::ss_operator_lor > ) abstract;
00723
00724 virtual lstring visit_ss_operator_inc(ptr< ::lestes::lang::cplus::sem::ss_operator_inc > ) abstract;
00725
00726 virtual lstring visit_ss_operator_dec(ptr< ::lestes::lang::cplus::sem::ss_operator_dec > ) abstract;
00727
00728 virtual lstring visit_ss_operator_comma(ptr< ::lestes::lang::cplus::sem::ss_operator_comma > ) abstract;
00729
00730 virtual lstring visit_ss_operator_access(ptr< ::lestes::lang::cplus::sem::ss_operator_access > ) abstract;
00731
00732 virtual lstring visit_ss_operator_access_member(ptr< ::lestes::lang::cplus::sem::ss_operator_access_member > ) abstract;
00733
00734 virtual lstring visit_ss_operator_function_call(ptr< ::lestes::lang::cplus::sem::ss_operator_function_call > ) abstract;
00735
00736 virtual lstring visit_ss_operator_array(ptr< ::lestes::lang::cplus::sem::ss_operator_array > ) abstract;
00737
00738 virtual lstring visit_ss_operator_ternary(ptr< ::lestes::lang::cplus::sem::ss_operator_ternary > ) abstract;
00739
00740
00741
00742
00743 virtual ptr<reflection_list> reflection_get() const;
00744
00745 virtual ptr<field_list_list> field_values_get() const;
00746
00747 protected:
00748
00749 ss_decl_name2lstring_base (
00750 );
00751
00752
00753 virtual void gc_mark();
00754
00755 private:
00756 static ptr<reflection_list> reflection;
00757
00758 };
00759
00760
00761 end_package(sem);
00762 end_package(cplus);
00763 end_package(lang);
00764 end_package(lestes);
00765
00766 #endif // lestes__lang__cplus__sem__ss_decl_name_visitor_v_g_hh__included