source: dev/trunk/jenga/include/smoothie/Smoothie.h@ 189

Last change on this file since 189 was 181, checked in by dai_9181, 17 years ago
File size: 883 bytes
Line 
1#pragma once
2
3#include "Source.h"
4#include "ObjectModule.h"
5#include "LexicalScoping.h"
6
7class Smoothie{
8 static bool isUnicode;
9
10 static Meta meta;
11public:
12
13 static bool IsUnicode()
14 {
15 return isUnicode;
16 }
17 static void SetUnicodeMark( bool isUnicode )
18 {
19 Smoothie::isUnicode = isUnicode;
20 }
21
22 static Meta &GetMeta()
23 {
24 return meta;
25 }
26
27 class Lexical{
28 public:
29 static string baseProjectDirPath;
30 static BasicSource source;
31 };
32
33 // コンパイル中に一時的に利用する
34 class Temp{
35 public:
36 // 現在の名前空間
37 static NamespaceScopes liveingNamespaceScopes;
38
39 // 現在インポートされている名前空間
40 static NamespaceScopesCollection importedNamespaces;
41
42 // コンパイル中のクラス
43 static const CClass *pCompilingClass;
44
45 // レキシカルスコープの状態
46 static CLexicalScopes *pLexicalScopes;
47 };
48
49 static bool isFullCompile;
50};
Note: See TracBrowser for help on using the repository browser.