00001
00002
00003 #include <lestes/lang/cplus/sem/ss_declaration.g.hh>
00004 #include <lestes/lang/cplus/sem/ss_misc.g.hh>
00005 #include <lestes/lang/cplus/sem/ss_decl_name.g.hh>
00006
00007 #include <lestes/std/list.hh>
00008 #include <lestes/std/pair.hh>
00009 #include <lestes/std/reflect.hh>
00010
00011 #include <lestes/lang/cplus/sem/lu_filter.g.hh>
00012
00013 package(lestes);
00014 package(lang);
00015 package(cplus);
00016 package(sem);
00017
00018
00019
00020
00021
00022
00023
00024
00025 lu_filter::result_type lu_filter::result_get() const
00026 {
00027 return result;
00028 }
00029
00030
00031
00032
00033
00034 void lu_filter::result_set(result_type x)
00035 {
00036 lu_filter::result = x;
00037 }
00038
00039
00040
00041
00042
00043 lu_filter::lu_filter (result_type a__lu_filter__result)
00044 : ss_declaration_default_visitor(), result(a__lu_filter__result)
00045 {}
00046
00047 ptr< object::reflection_list > lu_filter::reflection_get() const
00048 {
00049 if (!reflection) {
00050 typedef class_reflection::field_metadata md;
00051 typedef class_reflection::field_metadata_list mdlist;
00052 ptr<mdlist> mdl = mdlist::create();
00053 mdl->push_back( md::create( "result", "result_type" ) );
00054 reflection = reflection_list::create( ss_declaration_default_visitor::reflection_get() );
00055 reflection->push_back( class_reflection::create( "lu_filter", mdl ) );
00056 }
00057 return reflection;
00058 }
00059
00060 ptr< object::field_list_list > lu_filter::field_values_get() const
00061 {
00062 ptr < field_list_list > result = ss_declaration_default_visitor::field_values_get();
00063 result->push_back( value_list::create() );
00064 result->back()->push_back( objectize< result_type > ::create( this->result ) );
00065 return result;
00066 }
00067
00068 lu_filter::result_type lu_filter::filter( const ptr< ::lestes::lang::cplus::sem::ss_declaration > & o )
00069 {
00070 lassert2( o, "Cannot visit NULL object." );
00071 o->accept_ss_declaration_visitor( ptr< ss_declaration_visitor >(this) );
00072 return result_get();
00073 }
00074
00075
00076
00077
00078
00079
00080 void lu_filter::gc_mark()
00081 {
00082 ss_declaration_default_visitor::gc_mark();
00083 }
00084
00085
00086
00087
00088
00089
00090
00091
00092
00093 ptr< ::lestes::std::list< srp< lu_filter > > > lu_multi_filter::filter_list_get() const
00094 {
00095 return filter_list;
00096 }
00097
00098
00099
00100
00101
00102 ptr< lu_multi_filter > lu_multi_filter::create(result_type a__lu_filter__result,
00103 ptr< ::lestes::std::list< srp< lu_filter > > > a__lu_multi_filter__filter_list)
00104 {
00105 return ptr< lu_multi_filter > ( new lu_multi_filter(a__lu_filter__result,
00106 a__lu_multi_filter__filter_list) );
00107 }
00108
00109
00110
00111
00112
00113 ptr< lu_multi_filter > lu_multi_filter::create()
00114 {
00115 return ptr< lu_multi_filter > ( new lu_multi_filter(FR_NO, ::lestes::std::list< srp< lu_filter > > ::create()) );
00116 }
00117
00118
00119
00120
00121
00122 lu_multi_filter::lu_multi_filter (result_type a__lu_filter__result,
00123 ptr< ::lestes::std::list< srp< lu_filter > > > a__lu_multi_filter__filter_list)
00124 : lu_filter(a__lu_filter__result), filter_list(checked(a__lu_multi_filter__filter_list))
00125 {}
00126
00127 ptr< object::reflection_list > lu_multi_filter::reflection_get() const
00128 {
00129 if (!reflection) {
00130 typedef class_reflection::field_metadata md;
00131 typedef class_reflection::field_metadata_list mdlist;
00132 ptr<mdlist> mdl = mdlist::create();
00133 mdl->push_back( md::create( "filter_list", "list< srp< lu_filter > >" ) );
00134 reflection = reflection_list::create( lu_filter::reflection_get() );
00135 reflection->push_back( class_reflection::create( "lu_multi_filter", mdl ) );
00136 }
00137 return reflection;
00138 }
00139
00140 ptr< object::field_list_list > lu_multi_filter::field_values_get() const
00141 {
00142 ptr < field_list_list > result = lu_filter::field_values_get();
00143 result->push_back( value_list::create() );
00144 result->back()->push_back( this->filter_list );
00145 return result;
00146 }
00147
00148
00149
00150
00151
00152
00153 void lu_multi_filter::gc_mark()
00154 {
00155 lu_filter::gc_mark();
00156 }
00157
00158
00159
00160
00161
00162
00163
00164
00165
00166 ptr< lu_yes_cont_filter > lu_yes_cont_filter::the_instance = the_instance;
00167
00168
00169
00170
00171
00172 ptr< lu_yes_cont_filter > lu_yes_cont_filter::instance()
00173 {
00174 return the_instance ? the_instance : the_instance = new lu_yes_cont_filter(FR_NO);
00175 }
00176
00177
00178
00179
00180
00181 lu_yes_cont_filter::lu_yes_cont_filter (result_type a__lu_filter__result)
00182 : lu_filter(a__lu_filter__result)
00183 {}
00184
00185 ptr< object::reflection_list > lu_yes_cont_filter::reflection_get() const
00186 {
00187 if (!reflection) {
00188 typedef class_reflection::field_metadata md;
00189 typedef class_reflection::field_metadata_list mdlist;
00190 ptr<mdlist> mdl = mdlist::create();
00191 reflection = reflection_list::create( lu_filter::reflection_get() );
00192 reflection->push_back( class_reflection::create( "lu_yes_cont_filter", mdl ) );
00193 }
00194 return reflection;
00195 }
00196
00197 ptr< object::field_list_list > lu_yes_cont_filter::field_values_get() const
00198 {
00199 ptr < field_list_list > result = lu_filter::field_values_get();
00200 return result;
00201 }
00202
00203
00204
00205
00206
00207
00208 void lu_yes_cont_filter::gc_mark()
00209 {
00210 lu_filter::gc_mark();
00211 }
00212
00213
00214
00215
00216
00217
00218
00219
00220
00221 ptr< lu_yes_filter > lu_yes_filter::the_instance = the_instance;
00222
00223
00224
00225
00226
00227 ptr< lu_yes_filter > lu_yes_filter::instance()
00228 {
00229 return the_instance ? the_instance : the_instance = new lu_yes_filter(FR_NO);
00230 }
00231
00232
00233
00234
00235
00236 lu_yes_filter::lu_yes_filter (result_type a__lu_filter__result)
00237 : lu_filter(a__lu_filter__result)
00238 {}
00239
00240 ptr< object::reflection_list > lu_yes_filter::reflection_get() const
00241 {
00242 if (!reflection) {
00243 typedef class_reflection::field_metadata md;
00244 typedef class_reflection::field_metadata_list mdlist;
00245 ptr<mdlist> mdl = mdlist::create();
00246 reflection = reflection_list::create( lu_filter::reflection_get() );
00247 reflection->push_back( class_reflection::create( "lu_yes_filter", mdl ) );
00248 }
00249 return reflection;
00250 }
00251
00252 ptr< object::field_list_list > lu_yes_filter::field_values_get() const
00253 {
00254 ptr < field_list_list > result = lu_filter::field_values_get();
00255 return result;
00256 }
00257
00258
00259
00260
00261
00262
00263 void lu_yes_filter::gc_mark()
00264 {
00265 lu_filter::gc_mark();
00266 }
00267
00268
00269
00270
00271
00272
00273
00274
00275
00276 ptr< lu_struct_filter > lu_struct_filter::the_instance = the_instance;
00277
00278
00279
00280
00281
00282 ptr< lu_struct_filter > lu_struct_filter::instance()
00283 {
00284 return the_instance ? the_instance : the_instance = new lu_struct_filter(FR_NO);
00285 }
00286
00287
00288
00289
00290
00291 lu_struct_filter::lu_struct_filter (result_type a__lu_filter__result)
00292 : lu_filter(a__lu_filter__result)
00293 {}
00294
00295 ptr< object::reflection_list > lu_struct_filter::reflection_get() const
00296 {
00297 if (!reflection) {
00298 typedef class_reflection::field_metadata md;
00299 typedef class_reflection::field_metadata_list mdlist;
00300 ptr<mdlist> mdl = mdlist::create();
00301 reflection = reflection_list::create( lu_filter::reflection_get() );
00302 reflection->push_back( class_reflection::create( "lu_struct_filter", mdl ) );
00303 }
00304 return reflection;
00305 }
00306
00307 ptr< object::field_list_list > lu_struct_filter::field_values_get() const
00308 {
00309 ptr < field_list_list > result = lu_filter::field_values_get();
00310 return result;
00311 }
00312
00313
00314
00315
00316
00317
00318 void lu_struct_filter::gc_mark()
00319 {
00320 lu_filter::gc_mark();
00321 }
00322
00323
00324
00325
00326
00327
00328
00329
00330
00331 ptr< lu_namespace_filter > lu_namespace_filter::the_instance = the_instance;
00332
00333
00334
00335
00336
00337 ptr< lu_namespace_filter > lu_namespace_filter::instance()
00338 {
00339 return the_instance ? the_instance : the_instance = new lu_namespace_filter(FR_NO);
00340 }
00341
00342
00343
00344
00345
00346 lu_namespace_filter::lu_namespace_filter (result_type a__lu_filter__result)
00347 : lu_filter(a__lu_filter__result)
00348 {}
00349
00350 ptr< object::reflection_list > lu_namespace_filter::reflection_get() const
00351 {
00352 if (!reflection) {
00353 typedef class_reflection::field_metadata md;
00354 typedef class_reflection::field_metadata_list mdlist;
00355 ptr<mdlist> mdl = mdlist::create();
00356 reflection = reflection_list::create( lu_filter::reflection_get() );
00357 reflection->push_back( class_reflection::create( "lu_namespace_filter", mdl ) );
00358 }
00359 return reflection;
00360 }
00361
00362 ptr< object::field_list_list > lu_namespace_filter::field_values_get() const
00363 {
00364 ptr < field_list_list > result = lu_filter::field_values_get();
00365 return result;
00366 }
00367
00368
00369
00370
00371
00372
00373 void lu_namespace_filter::gc_mark()
00374 {
00375 lu_filter::gc_mark();
00376 }
00377
00378
00379
00380
00381
00382
00383
00384
00385
00386 ptr< lu_elaborated_filter > lu_elaborated_filter::the_instance = the_instance;
00387
00388
00389
00390
00391
00392 ptr< lu_elaborated_filter > lu_elaborated_filter::instance()
00393 {
00394 return the_instance ? the_instance : the_instance = new lu_elaborated_filter(FR_NO);
00395 }
00396
00397
00398
00399
00400
00401 lu_elaborated_filter::lu_elaborated_filter (result_type a__lu_filter__result)
00402 : lu_filter(a__lu_filter__result)
00403 {}
00404
00405 ptr< object::reflection_list > lu_elaborated_filter::reflection_get() const
00406 {
00407 if (!reflection) {
00408 typedef class_reflection::field_metadata md;
00409 typedef class_reflection::field_metadata_list mdlist;
00410 ptr<mdlist> mdl = mdlist::create();
00411 reflection = reflection_list::create( lu_filter::reflection_get() );
00412 reflection->push_back( class_reflection::create( "lu_elaborated_filter", mdl ) );
00413 }
00414 return reflection;
00415 }
00416
00417 ptr< object::field_list_list > lu_elaborated_filter::field_values_get() const
00418 {
00419 ptr < field_list_list > result = lu_filter::field_values_get();
00420 return result;
00421 }
00422
00423
00424
00425
00426
00427
00428 void lu_elaborated_filter::gc_mark()
00429 {
00430 lu_filter::gc_mark();
00431 }
00432
00433
00434
00435
00436
00437
00438
00439
00440
00441 ptr< lu_qual_filter > lu_qual_filter::the_instance = the_instance;
00442
00443
00444
00445
00446
00447 ptr< lu_qual_filter > lu_qual_filter::instance()
00448 {
00449 return the_instance ? the_instance : the_instance = new lu_qual_filter(FR_NO);
00450 }
00451
00452
00453
00454
00455
00456 lu_qual_filter::lu_qual_filter (result_type a__lu_filter__result)
00457 : lu_filter(a__lu_filter__result)
00458 {}
00459
00460 ptr< object::reflection_list > lu_qual_filter::reflection_get() const
00461 {
00462 if (!reflection) {
00463 typedef class_reflection::field_metadata md;
00464 typedef class_reflection::field_metadata_list mdlist;
00465 ptr<mdlist> mdl = mdlist::create();
00466 reflection = reflection_list::create( lu_filter::reflection_get() );
00467 reflection->push_back( class_reflection::create( "lu_qual_filter", mdl ) );
00468 }
00469 return reflection;
00470 }
00471
00472 ptr< object::field_list_list > lu_qual_filter::field_values_get() const
00473 {
00474 ptr < field_list_list > result = lu_filter::field_values_get();
00475 return result;
00476 }
00477
00478
00479
00480
00481
00482
00483 void lu_qual_filter::gc_mark()
00484 {
00485 lu_filter::gc_mark();
00486 }
00487
00488
00489
00490
00491
00492
00493
00494
00495
00496 ptr< lu_func_cont_filter > lu_func_cont_filter::the_instance = the_instance;
00497
00498
00499
00500
00501
00502 ptr< lu_func_cont_filter > lu_func_cont_filter::instance()
00503 {
00504 return the_instance ? the_instance : the_instance = new lu_func_cont_filter(FR_NO);
00505 }
00506
00507
00508
00509
00510
00511 lu_func_cont_filter::lu_func_cont_filter (result_type a__lu_filter__result)
00512 : lu_filter(a__lu_filter__result)
00513 {}
00514
00515 ptr< object::reflection_list > lu_func_cont_filter::reflection_get() const
00516 {
00517 if (!reflection) {
00518 typedef class_reflection::field_metadata md;
00519 typedef class_reflection::field_metadata_list mdlist;
00520 ptr<mdlist> mdl = mdlist::create();
00521 reflection = reflection_list::create( lu_filter::reflection_get() );
00522 reflection->push_back( class_reflection::create( "lu_func_cont_filter", mdl ) );
00523 }
00524 return reflection;
00525 }
00526
00527 ptr< object::field_list_list > lu_func_cont_filter::field_values_get() const
00528 {
00529 ptr < field_list_list > result = lu_filter::field_values_get();
00530 return result;
00531 }
00532
00533
00534
00535
00536
00537
00538 void lu_func_cont_filter::gc_mark()
00539 {
00540 lu_filter::gc_mark();
00541 }
00542
00543
00544
00545
00546
00547
00548
00549
00550
00551 ptr< ss_decl_name > lu_name_filter::name_get() const
00552 {
00553 return name;
00554 }
00555
00556
00557
00558
00559
00560 void lu_name_filter::name_set(const ptr< ss_decl_name > & x)
00561 {
00562 lu_name_filter::name = x;
00563 }
00564
00565
00566
00567
00568
00569 ptr< lu_name_filter > lu_name_filter::create(result_type a__lu_filter__result,
00570 ptr< ss_decl_name > a__lu_name_filter__name)
00571 {
00572 return ptr< lu_name_filter > ( new lu_name_filter(a__lu_filter__result,
00573 a__lu_name_filter__name) );
00574 }
00575
00576
00577
00578
00579
00580 ptr< lu_name_filter > lu_name_filter::create(ptr< ss_decl_name > a__lu_name_filter__name)
00581 {
00582 return ptr< lu_name_filter > ( new lu_name_filter(FR_NO, a__lu_name_filter__name) );
00583 }
00584
00585
00586
00587
00588
00589 lu_name_filter::lu_name_filter (result_type a__lu_filter__result,
00590 ptr< ss_decl_name > a__lu_name_filter__name)
00591 : lu_filter(a__lu_filter__result), name(checked(a__lu_name_filter__name))
00592 {}
00593
00594 ptr< object::reflection_list > lu_name_filter::reflection_get() const
00595 {
00596 if (!reflection) {
00597 typedef class_reflection::field_metadata md;
00598 typedef class_reflection::field_metadata_list mdlist;
00599 ptr<mdlist> mdl = mdlist::create();
00600 mdl->push_back( md::create( "name", "ss_decl_name" ) );
00601 reflection = reflection_list::create( lu_filter::reflection_get() );
00602 reflection->push_back( class_reflection::create( "lu_name_filter", mdl ) );
00603 }
00604 return reflection;
00605 }
00606
00607 ptr< object::field_list_list > lu_name_filter::field_values_get() const
00608 {
00609 ptr < field_list_list > result = lu_filter::field_values_get();
00610 result->push_back( value_list::create() );
00611 result->back()->push_back( this->name );
00612 return result;
00613 }
00614
00615
00616
00617
00618
00619
00620 void lu_name_filter::gc_mark()
00621 {
00622 lu_filter::gc_mark();
00623 }
00624
00625
00626
00627
00628
00629
00630
00631
00632
00633 ptr< ss_declaration_time > lu_visible_filter::visible_before_get() const
00634 {
00635 return visible_before;
00636 }
00637
00638
00639
00640
00641
00642 void lu_visible_filter::visible_before_set(const ptr< ss_declaration_time > & x)
00643 {
00644 lu_visible_filter::visible_before = x;
00645 }
00646
00647
00648
00649
00650
00651 ptr< lu_visible_filter > lu_visible_filter::create(result_type a__lu_filter__result,
00652 ptr< ss_declaration_time > a__lu_visible_filter__visible_before)
00653 {
00654 return ptr< lu_visible_filter > ( new lu_visible_filter(a__lu_filter__result,
00655 a__lu_visible_filter__visible_before) );
00656 }
00657
00658
00659
00660
00661
00662 ptr< lu_visible_filter > lu_visible_filter::create(ptr< ss_declaration_time > a__lu_visible_filter__visible_before)
00663 {
00664 return ptr< lu_visible_filter > ( new lu_visible_filter(FR_NO, a__lu_visible_filter__visible_before) );
00665 }
00666
00667
00668
00669
00670
00671 lu_visible_filter::lu_visible_filter (result_type a__lu_filter__result,
00672 ptr< ss_declaration_time > a__lu_visible_filter__visible_before)
00673 : lu_filter(a__lu_filter__result), visible_before(checked(a__lu_visible_filter__visible_before))
00674 {}
00675
00676 ptr< object::reflection_list > lu_visible_filter::reflection_get() const
00677 {
00678 if (!reflection) {
00679 typedef class_reflection::field_metadata md;
00680 typedef class_reflection::field_metadata_list mdlist;
00681 ptr<mdlist> mdl = mdlist::create();
00682 mdl->push_back( md::create( "visible_before", "ss_declaration_time" ) );
00683 reflection = reflection_list::create( lu_filter::reflection_get() );
00684 reflection->push_back( class_reflection::create( "lu_visible_filter", mdl ) );
00685 }
00686 return reflection;
00687 }
00688
00689 ptr< object::field_list_list > lu_visible_filter::field_values_get() const
00690 {
00691 ptr < field_list_list > result = lu_filter::field_values_get();
00692 result->push_back( value_list::create() );
00693 result->back()->push_back( this->visible_before );
00694 return result;
00695 }
00696
00697
00698
00699
00700
00701
00702 void lu_visible_filter::gc_mark()
00703 {
00704 lu_filter::gc_mark();
00705 }
00706
00707
00708
00709
00710
00711
00712
00713
00714
00715 ptr< lu_secu_filter > lu_secu_filter::the_instance = the_instance;
00716
00717
00718
00719
00720
00721 ptr< lu_secu_filter > lu_secu_filter::instance()
00722 {
00723 return the_instance ? the_instance : the_instance = new lu_secu_filter(FR_NO);
00724 }
00725
00726
00727
00728
00729
00730 lu_secu_filter::lu_secu_filter (result_type a__lu_filter__result)
00731 : lu_filter(a__lu_filter__result)
00732 {}
00733
00734 ptr< object::reflection_list > lu_secu_filter::reflection_get() const
00735 {
00736 if (!reflection) {
00737 typedef class_reflection::field_metadata md;
00738 typedef class_reflection::field_metadata_list mdlist;
00739 ptr<mdlist> mdl = mdlist::create();
00740 reflection = reflection_list::create( lu_filter::reflection_get() );
00741 reflection->push_back( class_reflection::create( "lu_secu_filter", mdl ) );
00742 }
00743 return reflection;
00744 }
00745
00746 ptr< object::field_list_list > lu_secu_filter::field_values_get() const
00747 {
00748 ptr < field_list_list > result = lu_filter::field_values_get();
00749 return result;
00750 }
00751
00752
00753
00754
00755
00756
00757 void lu_secu_filter::gc_mark()
00758 {
00759 lu_filter::gc_mark();
00760 }
00761
00762
00763
00764
00765
00766
00767
00768
00769
00770 ptr< lu_filter > lu_inversion_filter::inverted_get() const
00771 {
00772 return inverted;
00773 }
00774
00775
00776
00777
00778
00779 void lu_inversion_filter::inverted_set(const ptr< lu_filter > & x)
00780 {
00781 lu_inversion_filter::inverted = x;
00782 }
00783
00784
00785
00786
00787
00788 ptr< lu_inversion_filter > lu_inversion_filter::create(result_type a__lu_filter__result,
00789 ptr< lu_filter > a__lu_inversion_filter__inverted)
00790 {
00791 return ptr< lu_inversion_filter > ( new lu_inversion_filter(a__lu_filter__result,
00792 a__lu_inversion_filter__inverted) );
00793 }
00794
00795
00796
00797
00798
00799 ptr< lu_inversion_filter > lu_inversion_filter::create(ptr< lu_filter > a__lu_inversion_filter__inverted)
00800 {
00801 return ptr< lu_inversion_filter > ( new lu_inversion_filter(FR_NO, a__lu_inversion_filter__inverted) );
00802 }
00803
00804
00805
00806
00807
00808 lu_inversion_filter::lu_inversion_filter (result_type a__lu_filter__result,
00809 ptr< lu_filter > a__lu_inversion_filter__inverted)
00810 : lu_filter(a__lu_filter__result), inverted(checked(a__lu_inversion_filter__inverted))
00811 {}
00812
00813 ptr< object::reflection_list > lu_inversion_filter::reflection_get() const
00814 {
00815 if (!reflection) {
00816 typedef class_reflection::field_metadata md;
00817 typedef class_reflection::field_metadata_list mdlist;
00818 ptr<mdlist> mdl = mdlist::create();
00819 mdl->push_back( md::create( "inverted", "lu_filter" ) );
00820 reflection = reflection_list::create( lu_filter::reflection_get() );
00821 reflection->push_back( class_reflection::create( "lu_inversion_filter", mdl ) );
00822 }
00823 return reflection;
00824 }
00825
00826 ptr< object::field_list_list > lu_inversion_filter::field_values_get() const
00827 {
00828 ptr < field_list_list > result = lu_filter::field_values_get();
00829 result->push_back( value_list::create() );
00830 result->back()->push_back( this->inverted );
00831 return result;
00832 }
00833
00834
00835
00836
00837
00838
00839 void lu_inversion_filter::gc_mark()
00840 {
00841 lu_filter::gc_mark();
00842 }
00843
00844
00845
00846
00847
00848 ptr<object::reflection_list> lu_filter::reflection = reflection;
00849 ptr<object::reflection_list> lu_multi_filter::reflection = reflection;
00850 ptr<object::reflection_list> lu_yes_cont_filter::reflection = reflection;
00851 ptr<object::reflection_list> lu_yes_filter::reflection = reflection;
00852 ptr<object::reflection_list> lu_struct_filter::reflection = reflection;
00853 ptr<object::reflection_list> lu_namespace_filter::reflection = reflection;
00854 ptr<object::reflection_list> lu_elaborated_filter::reflection = reflection;
00855 ptr<object::reflection_list> lu_qual_filter::reflection = reflection;
00856 ptr<object::reflection_list> lu_func_cont_filter::reflection = reflection;
00857 ptr<object::reflection_list> lu_name_filter::reflection = reflection;
00858 ptr<object::reflection_list> lu_visible_filter::reflection = reflection;
00859 ptr<object::reflection_list> lu_secu_filter::reflection = reflection;
00860 ptr<object::reflection_list> lu_inversion_filter::reflection = reflection;
00861
00862 end_package(sem);
00863 end_package(cplus);
00864 end_package(lang);
00865 end_package(lestes);
00866