Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/InitTweak/GenInit.h

    rbfd4974 rd180746  
    1616#pragma once
    1717
    18 #include <list>                // for list
    19 #include <string>              // for string
     18#include <list>               // for list
     19#include <string>             // for string
    2020
    21 #include "SynTree/SynTree.h"   // for Visitor Nodes
    22 
    23 #include "GenPoly/ScopedSet.h" // for ScopedSet
     21#include "SynTree/SynTree.h"  // for Visitor Nodes
    2422
    2523namespace InitTweak {
     
    2725        void genInit( std::list< Declaration * > & translationUnit );
    2826
    29         /// Converts return statements into copy constructor calls on the hidden return variable
    30         void fixReturnStatements( std::list< Declaration * > & translationUnit );
    31 
    32         /// generates a single ctor/dtor statement using objDecl as the 'this' parameter and arg as the optional argument
    33         ImplicitCtorDtorStmt * genCtorDtor( const std::string & fname, ObjectDecl * objDecl, Expression * arg = nullptr );
     27  /// generates a single ctor/dtor statement using objDecl as the 'this' parameter and arg as the optional argument
     28  ImplicitCtorDtorStmt * genCtorDtor( const std::string & fname, ObjectDecl * objDecl, Expression * arg = nullptr );
    3429
    3530        /// creates an appropriate ConstructorInit node which contains a constructor, destructor, and C-initializer
    3631        ConstructorInit * genCtorInit( ObjectDecl * objDecl );
    37 
    38         class ManagedTypes {
    39         public:
    40                 bool isManaged( ObjectDecl * objDecl ) const ; // determine if object is managed
    41                 bool isManaged( Type * type ) const; // determine if type is managed
    42 
    43                 void handleDWT( DeclarationWithType * dwt ); // add type to managed if ctor/dtor
    44                 void handleStruct( StructDecl * aggregateDecl ); // add type to managed if child is managed
    45 
    46                 void beginScope();
    47                 void endScope();
    48         private:
    49                 GenPoly::ScopedSet< std::string > managedTypes;
    50         };
    5132} // namespace
    5233
Note: See TracChangeset for help on using the changeset viewer.