vrq
/usr/src/RPM/BUILD/vrq-1.0.96/src/compile.h
Go to the documentation of this file.
00001 /*-----------------------------------------------------------------------------
00002  *      Copyright (c) 1997-2004 Mark Hummel DBA Raquette Software.
00003  *              All rights reserved
00004  *
00005  *    This file contains source code written by Raquette Software, 
00006  *    68 Stewart Street, Franklin MA 02038. It may not be used without 
00007  *    express written permission. The expression of the information 
00008  *    contained herein is protected under federal copyright laws and 
00009  *    all copying without permission is prohibited and may be subject 
00010  *    to criminal penalties. The Author assumes no responsibility for 
00011  *    errors, omissions, or damages caused by the use of these programs 
00012  *    or from use of the information contained herein.
00013  *
00014  *-----------------------------------------------------------------------------
00015  */
00016 /******************************************************************************
00017  *
00018  *         compile.hpp
00019  *
00020  ******************************************************************************
00021  */
00022  
00027 #ifndef COMPILE_PP
00028 #define COMPILE_HPP
00029 
00030 #include <set>
00031 #include <map>
00032 using namespace std;
00033 
00034 class CNode;
00035 class CModule;
00036 class CDataType;
00037 
00049 void AnalyseModules( 
00050     CNode*                codeList, 
00051     set<CModule*>&        allModules,
00052     set<CModule*>&        topLevelModules,
00053     set<CModule*>&        leafModules,
00054     set<CModule*>&        undefinedModules,
00055     map<CModule*,CNode*>& module2Comments
00056 );
00057 
00069 int ResolveReference( 
00070         CNode*          ref, 
00071         CDataType*&     dataType,
00072         vector<CNode*>& unpackedDimensions,
00073         vector<CNode*>& packedDimensions,
00074         vector<CNode*>& residualPackedIndices );
00075 
00076 #endif // COMPILE_HPP