Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Common/PassVisitor.h

    raf5c204a r4eb31f2b  
    1818// Templated visitor type
    1919// To use declare a PassVisitor< YOUR VISITOR TYPE >
    20 // The visitor type should specify the previsit/postvisit/premutate/postmutate for types that are desired.
    21 // Note: previsit/postvisit/premutate/postmutate must be **public** members
    22 //
    23 // Several additional features are available through inheritance
    24 // | WithTypeSubstitution - provides polymorphic TypeSubstitution * env for the current expression
    25 // | WithStmtsToAdd       - provides the ability to insert statements before or after the current statement by adding new statements into
    26 //                          stmtsToAddBefore or stmtsToAddAfter respectively.
    27 // | WithShortCircuiting  - provides the ability to skip visiting child nodes; set skip_children to true if pre{visit,mutate} to skip visiting children
    28 // | WithScopes           - provides the ability to save/restore data like a LIFO stack; to save, call GuardValue with the variable to save, the variable
    29 //                          will automatically be restored to its previous value after the corresponding postvisit/postmutate teminates.
     20// The visitor type should specify the previsit/postvisit for types that are desired.
    3021//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    3122template< typename pass_type >
     
    9586        virtual void visit( ConstructorExpr * ctorExpr ) override final;
    9687        virtual void visit( CompoundLiteralExpr *compLitExpr ) override final;
     88        virtual void visit( UntypedValofExpr *valofExpr ) override final;
    9789        virtual void visit( RangeExpr *rangeExpr ) override final;
    9890        virtual void visit( UntypedTupleExpr *tupleExpr ) override final;
     
    180172        virtual Expression* mutate( ConstructorExpr *ctorExpr ) override final;
    181173        virtual Expression* mutate( CompoundLiteralExpr *compLitExpr ) override final;
     174        virtual Expression* mutate( UntypedValofExpr *valofExpr ) override final;
    182175        virtual Expression* mutate( RangeExpr *rangeExpr ) override final;
    183176        virtual Expression* mutate( UntypedTupleExpr *tupleExpr ) override final;
Note: See TracChangeset for help on using the changeset viewer.