Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/AST/Pass.hpp

    re16e27e1 re67991f  
    112112        const ast::Stmt *             visit( const ast::FinallyStmt          * ) override final;
    113113        const ast::Stmt *             visit( const ast::WaitForStmt          * ) override final;
    114         const ast::Stmt *             visit( const ast::WithStmt             * ) override final;
     114        const ast::Decl *             visit( const ast::WithStmt             * ) override final;
    115115        const ast::NullStmt *         visit( const ast::NullStmt             * ) override final;
    116116        const ast::Stmt *             visit( const ast::DeclStmt             * ) override final;
     
    293293                at_cleanup( [func](void *) { func(); }, nullptr );
    294294        }
     295
     296        /// When this node is finished being visited, call a member of an object.
     297        template<typename T>
     298        void GuardMethod( T * obj, void (T::*method)() ) {
     299                at_cleanup( [ method ]( void * object ) {
     300                        static_cast< T * >( object )->method();
     301                }, static_cast< void * >( obj ) );
     302        }
    295303};
    296304
Note: See TracChangeset for help on using the changeset viewer.