コード例 #1
0
 //private static final String TAG ="TJS";
 // プリプロセッサでは未定义の时この值が入る
 // create a member if not exists
 //public static int mCompactVariantArrayMagic;
 //public static VariantArrayStack mVariantArrayStack;
 // static 关系はここで初期化
 public static void Initialize()
 {
     // mStorage = null; // 事前に设定されるので、ここで初期化するのはまずい
     NULL_ARG      = new Variant[0];
     IsTarminating = false;
     mWarnOnNonGlobalEvalOperator    = false;
     mUnaryAsteriskIgnoresPropAccess = false;
     mNativeClassNames = new AList <string>();
     mGlobalStringMap  = new GlobalStringMap();
     //mCompactVariantArrayMagic = 0;
     //mVariantArrayStack = new VariantArrayStack();
     mEvalOperatorIsOnGlobal = false;
     EnableDebugMode         = true;
     mConsoleOutput          = null;
     mMessageMapper          = new MessageMapper();
     RandomGeneratorNI.SetRandomBits128(null);
     //ArrayNI.register();
     mVAPool = new VariantPool();
     CompileState.mEnableDicFuncQuickHack = true;
     Variant.Initialize();
     DictionaryObject.Initialize();
     ArrayObject.Initialize();
     TjsByteCodeLoader.Initialize();
     CustomObject.Initialize();
     MathClass.Initialize();
     LexicalAnalyzer.Initialize();
     try
     {
         mArrayClass      = new ArrayClass();
         mDictionaryClass = new DictionaryClass();
     }
     catch (VariantException)
     {
     }
     catch (TjsException)
     {
     }
 }