00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef EvalBasics_H
00025 #define EvalBasics_H
00026
00027 #include "ValExpr.H"
00028 #include <Basics.H>
00029 #include <CacheIndex.H>
00030 #include <CacheC.H>
00031 #include <VestaSource.H>
00032
00033 class Evaluator {
00034 public:
00035 class failure {
00036 public:
00037 Text msg;
00038 bool r;
00039 inline failure(const Text &msg, bool r)
00040 { this->msg = msg; this->r = r; };
00041 inline failure(const failure &f)
00042 { this->msg = f.msg; this->r = f.r; };
00043 inline failure& operator=(const failure &f) {
00044 this->msg = f.msg; this->r = f.r; return *this; };
00045 };
00046 };
00047
00048
00049
00050 extern bool parseOnly, noAddEntry, fsDeps, evalCalls, stopOnError,
00051 psStat, shipBySymLink, shipClean, forceClean, diagnose,
00052 hushedShipping, pauseBeforeTool, pauseAfterTool,
00053 pauseAfterToolSignal, pauseAfterToolError, autoRepl, dotLogFiles;
00054 extern Text shipToPath, shipFromPath;
00055
00056
00057
00058 extern CacheC *theCache;
00059 extern time_t leaseDuration;
00060 extern int cacheOption, maxThreads;
00061
00062
00063 extern int toolCallCounter, toolHitCounter, appCallCounter, appHitCounter,
00064 sModelCallCounter, sModelHitCounter, nModelCallCounter,
00065 nModelHitCounter;
00066
00067
00068
00069 extern IntegerVC *fpContent;
00070
00071
00072 extern Text toolDirServerIntfName;
00073
00074
00075
00076 extern VestaSource *topModelRoot;
00077 extern ShortId topModelSid;
00078
00079
00080 extern bool recordTrace;
00081 extern bool recordCallStack;
00082 extern bool printVersion;
00083 extern bool printResult;
00084 extern bool printCacheStats;
00085 extern bool printSidNum;
00086
00087
00088 static Basics::mutex callStackMu;
00089
00090
00091 extern VestaSource *rootForDeriveds;
00092
00093
00094 extern const Text emptyText;
00095
00096
00097 Text IntToText(int n);
00098 Text IntArc(int n);
00099 int ArcInt(const Text& t);
00100 int IncCounter(int* counter);
00101
00102 #endif // EvalBasics_H