Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/SynTree/Mutator.cc

    r6eb8948 r906e24d  
    178178
    179179Expression *Mutator::mutate( ApplicationExpr *applicationExpr ) {
    180         mutateAll( applicationExpr->get_results(), *this );
     180        applicationExpr->set_result( maybeMutate( applicationExpr->get_result(), *this ) );
    181181        applicationExpr->set_function( maybeMutate( applicationExpr->get_function(), *this ) );
    182182        mutateAll( applicationExpr->get_args(), *this );
     
    185185
    186186Expression *Mutator::mutate( UntypedExpr *untypedExpr ) {
    187         mutateAll( untypedExpr->get_results(), *this );
     187        untypedExpr->set_result( maybeMutate( untypedExpr->get_result(), *this ) );
    188188        mutateAll( untypedExpr->get_args(), *this );
    189189        return untypedExpr;
     
    191191
    192192Expression *Mutator::mutate( NameExpr *nameExpr ) {
    193         mutateAll( nameExpr->get_results(), *this );
     193        nameExpr->set_result( maybeMutate( nameExpr->get_result(), *this ) );
    194194        return nameExpr;
    195195}
    196196
    197197Expression *Mutator::mutate( AddressExpr *addressExpr ) {
    198         mutateAll( addressExpr->get_results(), *this );
     198        addressExpr->set_result( maybeMutate( addressExpr->get_result(), *this ) );
    199199        addressExpr->set_arg( maybeMutate( addressExpr->get_arg(), *this ) );
    200200        return addressExpr;
     
    202202
    203203Expression *Mutator::mutate( LabelAddressExpr *labelAddressExpr ) {
    204         mutateAll( labelAddressExpr->get_results(), *this );
     204        labelAddressExpr->set_result( maybeMutate( labelAddressExpr->get_result(), *this ) );
    205205        labelAddressExpr->set_arg( maybeMutate( labelAddressExpr->get_arg(), *this ) );
    206206        return labelAddressExpr;
     
    208208
    209209Expression *Mutator::mutate( CastExpr *castExpr ) {
    210         mutateAll( castExpr->get_results(), *this );
     210        castExpr->set_result( maybeMutate( castExpr->get_result(), *this ) );
    211211        castExpr->set_arg( maybeMutate( castExpr->get_arg(), *this ) );
    212212        return castExpr;
     
    214214
    215215Expression *Mutator::mutate( UntypedMemberExpr *memberExpr ) {
    216         mutateAll( memberExpr->get_results(), *this );
    217         memberExpr->set_aggregate( maybeMutate( memberExpr->get_aggregate(), *this ) );
    218         memberExpr->set_member( maybeMutate( memberExpr->get_member(), *this ) );
    219         return memberExpr;
    220 }
    221 
    222 Expression *Mutator::mutate( MemberExpr *memberExpr ) {
    223         mutateAll( memberExpr->get_results(), *this );
     216        memberExpr->set_result( maybeMutate( memberExpr->get_result(), *this ) );
    224217        memberExpr->set_aggregate( maybeMutate( memberExpr->get_aggregate(), *this ) );
    225218        return memberExpr;
    226219}
    227220
     221Expression *Mutator::mutate( MemberExpr *memberExpr ) {
     222        memberExpr->set_result( maybeMutate( memberExpr->get_result(), *this ) );
     223        memberExpr->set_aggregate( maybeMutate( memberExpr->get_aggregate(), *this ) );
     224        return memberExpr;
     225}
     226
    228227Expression *Mutator::mutate( VariableExpr *variableExpr ) {
    229         mutateAll( variableExpr->get_results(), *this );
     228        variableExpr->set_result( maybeMutate( variableExpr->get_result(), *this ) );
    230229        return variableExpr;
    231230}
    232231
    233232Expression *Mutator::mutate( ConstantExpr *constantExpr ) {
    234         mutateAll( constantExpr->get_results(), *this );
     233        constantExpr->set_result( maybeMutate( constantExpr->get_result(), *this ) );
    235234//  maybeMutate( constantExpr->get_constant(), *this )
    236235        return constantExpr;
     
    238237
    239238Expression *Mutator::mutate( SizeofExpr *sizeofExpr ) {
    240         mutateAll( sizeofExpr->get_results(), *this );
     239        sizeofExpr->set_result( maybeMutate( sizeofExpr->get_result(), *this ) );
    241240        if ( sizeofExpr->get_isType() ) {
    242241                sizeofExpr->set_type( maybeMutate( sizeofExpr->get_type(), *this ) );
     
    248247
    249248Expression *Mutator::mutate( AlignofExpr *alignofExpr ) {
    250         mutateAll( alignofExpr->get_results(), *this );
     249        alignofExpr->set_result( maybeMutate( alignofExpr->get_result(), *this ) );
    251250        if ( alignofExpr->get_isType() ) {
    252251                alignofExpr->set_type( maybeMutate( alignofExpr->get_type(), *this ) );
     
    258257
    259258Expression *Mutator::mutate( UntypedOffsetofExpr *offsetofExpr ) {
    260         mutateAll( offsetofExpr->get_results(), *this );
     259        offsetofExpr->set_result( maybeMutate( offsetofExpr->get_result(), *this ) );
    261260        offsetofExpr->set_type( maybeMutate( offsetofExpr->get_type(), *this ) );
    262261        return offsetofExpr;
     
    264263
    265264Expression *Mutator::mutate( OffsetofExpr *offsetofExpr ) {
    266         mutateAll( offsetofExpr->get_results(), *this );
     265        offsetofExpr->set_result( maybeMutate( offsetofExpr->get_result(), *this ) );
    267266        offsetofExpr->set_type( maybeMutate( offsetofExpr->get_type(), *this ) );
    268267        offsetofExpr->set_member( maybeMutate( offsetofExpr->get_member(), *this ) );
     
    271270
    272271Expression *Mutator::mutate( OffsetPackExpr *offsetPackExpr ) {
    273         mutateAll( offsetPackExpr->get_results(), *this );
     272        offsetPackExpr->set_result( maybeMutate( offsetPackExpr->get_result(), *this ) );
    274273        offsetPackExpr->set_type( maybeMutate( offsetPackExpr->get_type(), *this ) );
    275274        return offsetPackExpr;
     
    277276
    278277Expression *Mutator::mutate( AttrExpr *attrExpr ) {
    279         mutateAll( attrExpr->get_results(), *this );
     278        attrExpr->set_result( maybeMutate( attrExpr->get_result(), *this ) );
    280279        if ( attrExpr->get_isType() ) {
    281280                attrExpr->set_type( maybeMutate( attrExpr->get_type(), *this ) );
     
    287286
    288287Expression *Mutator::mutate( LogicalExpr *logicalExpr ) {
    289         mutateAll( logicalExpr->get_results(), *this );
     288        logicalExpr->set_result( maybeMutate( logicalExpr->get_result(), *this ) );
    290289        logicalExpr->set_arg1( maybeMutate( logicalExpr->get_arg1(), *this ) );
    291290        logicalExpr->set_arg2( maybeMutate( logicalExpr->get_arg2(), *this ) );
     
    294293
    295294Expression *Mutator::mutate( ConditionalExpr *conditionalExpr ) {
    296         mutateAll( conditionalExpr->get_results(), *this );
     295        conditionalExpr->set_result( maybeMutate( conditionalExpr->get_result(), *this ) );
    297296        conditionalExpr->set_arg1( maybeMutate( conditionalExpr->get_arg1(), *this ) );
    298297        conditionalExpr->set_arg2( maybeMutate( conditionalExpr->get_arg2(), *this ) );
     
    302301
    303302Expression *Mutator::mutate( CommaExpr *commaExpr ) {
    304         mutateAll( commaExpr->get_results(), *this );
     303        commaExpr->set_result( maybeMutate( commaExpr->get_result(), *this ) );
    305304        commaExpr->set_arg1( maybeMutate( commaExpr->get_arg1(), *this ) );
    306305        commaExpr->set_arg2( maybeMutate( commaExpr->get_arg2(), *this ) );
     
    308307}
    309308
     309Expression *Mutator::mutate( TupleExpr *tupleExpr ) {
     310        tupleExpr->set_result( maybeMutate( tupleExpr->get_result(), *this ) );
     311        mutateAll( tupleExpr->get_exprs(), *this );
     312        return tupleExpr;
     313}
     314
     315Expression *Mutator::mutate( SolvedTupleExpr *tupleExpr ) {
     316        tupleExpr->set_result( maybeMutate( tupleExpr->get_result(), *this ) );
     317        mutateAll( tupleExpr->get_exprs(), *this );
     318        return tupleExpr;
     319}
     320
    310321Expression *Mutator::mutate( TypeExpr *typeExpr ) {
    311         mutateAll( typeExpr->get_results(), *this );
     322        typeExpr->set_result( maybeMutate( typeExpr->get_result(), *this ) );
    312323        typeExpr->set_type( maybeMutate( typeExpr->get_type(), *this ) );
    313324        return typeExpr;
     
    329340
    330341Expression* Mutator::mutate( ConstructorExpr *ctorExpr ) {
    331         mutateAll( ctorExpr->get_results(), *this );
     342        ctorExpr->set_result( maybeMutate( ctorExpr->get_result(), *this ) );
    332343        ctorExpr->set_callExpr( maybeMutate( ctorExpr->get_callExpr(), *this ) );
    333344        return ctorExpr;
     
    335346
    336347Expression *Mutator::mutate( CompoundLiteralExpr *compLitExpr ) {
    337         mutateAll( compLitExpr->get_results(), *this );
     348        compLitExpr->set_result( maybeMutate( compLitExpr->get_result(), *this ) );
    338349        compLitExpr->set_type( maybeMutate( compLitExpr->get_type(), *this ) );
    339350        compLitExpr->set_initializer( maybeMutate( compLitExpr->get_initializer(), *this ) );
     
    342353
    343354Expression *Mutator::mutate( UntypedValofExpr *valofExpr ) {
    344         mutateAll( valofExpr->get_results(), *this );
     355        valofExpr->set_result( maybeMutate( valofExpr->get_result(), *this ) );
    345356        return valofExpr;
    346357}
     
    350361        rangeExpr->set_high( maybeMutate( rangeExpr->get_high(), *this ) );
    351362        return rangeExpr;
    352 }
    353 
    354 Expression *Mutator::mutate( TupleExpr *tupleExpr ) {
    355         mutateAll( tupleExpr->get_results(), *this );
    356         mutateAll( tupleExpr->get_exprs(), *this );
    357         return tupleExpr;
    358 }
    359 
    360 Expression *Mutator::mutate( TupleIndexExpr *tupleExpr ) {
    361         mutateAll( tupleExpr->get_results(), *this );
    362         tupleExpr->set_tuple( maybeMutate( tupleExpr->get_tuple(), *this ) );
    363         return tupleExpr;
    364 }
    365 
    366 Expression *Mutator::mutate( MemberTupleExpr *tupleExpr ) {
    367         mutateAll( tupleExpr->get_results(), *this );
    368         tupleExpr->set_member( maybeMutate( tupleExpr->get_member(), *this ) );
    369         tupleExpr->set_aggregate( maybeMutate( tupleExpr->get_aggregate(), *this ) );
    370         return tupleExpr;
    371 }
    372 
    373 Expression *Mutator::mutate( TupleAssignExpr *assignExpr ) {
    374         mutateAll( assignExpr->get_results(), *this );
    375         mutateAll( assignExpr->get_tempDecls(), *this );
    376         mutateAll( assignExpr->get_assigns(), *this );
    377         return assignExpr;
    378 }
    379 
    380 Expression *Mutator::mutate( StmtExpr *stmtExpr ) {
    381         mutateAll( stmtExpr->get_results(), *this );
    382         stmtExpr->set_statements( maybeMutate( stmtExpr->get_statements(), *this ) );
    383         return stmtExpr;
    384363}
    385364
Note: See TracChangeset for help on using the changeset viewer.