NewtEnv.h

実行環境 [詳細]

#include "NewtType.h"
#include "NewtMem.h"

ソースコードを見る。

データ構造

struct  newt_env_t
 実行環境 [詳細]
struct  newt_sym_t
 よく使うシンボル [詳細]

マクロ定義

#define NEWT_DEBUG   (newt_env._debug)
 デバッグフラグ
#define NEWT_TRACE   (newt_env._trace)
 トレースフラグ
#define NEWT_DUMPLEX   (newt_env._dumpLex)
 ダンプ字句解析フラグ
#define NEWT_DUMPSYNTAX   (newt_env._dumpSyntax)
 ダンプ構文木フラグ
#define NEWT_DUMPBC   (newt_env._dumpBC)
 ダンプバイトコードフラグ
#define NEWT_POOL   (newt_env.pool)
 メモリプール
#define NEWT_SWEEP   (newt_env.sweep)
 SWEEPフラグ
#define NEWT_NEEDGC   (newt_env.needgc)
 GCフラグ
#define NEWT_MODE_NOS2   (newt_env.mode.nos2)
 NOS2 コンパチブル
#define NSSTR(s)   (NewtMakeString(s, false))
 文字列オブジェクトの作成
#define NSSTRCONST(s)   (NewtMakeString(s, true))
 文字列定数オブジェクトの作成
#define NSINT(n)   (NewtMakeInteger(n))
 整数オブジェクトの作成
#define NSREAL(n)   (NewtMakeReal(n))
 浮動小数点オブジェクトの作成
#define NSSYM0(name)   newt_sym.name
 保管場所からシンボルオブジェクトを取得
#define NSSYM(name)   (NewtMakeSymbol(#name))
 シンボルオブジェクトの作成
#define NSNAMEDMP(name)   (NewtMakeNamedMP(#name))
 名前付マジックポインタの作成
#define NSNAMEDMP0(name)   (NewtSymbolToMP(NSSYM0(name)))
 保管場所から名前付マジックポインタの作成
#define NSMP(n)   (NewtMakeMagicPointer(0, n))
 マジックポインタの作成
#define NS_CLASS   NSSYM0(__class)
 class シンボル
#define NS_INT   NSSYM0(__int)
 int シンボル
#define NS_CHAR   NSSYM0(__char)
 char シンボル
#define NcGlobalFnExists(r)   NsGlobalFnExists(kNewtRefNIL, r)
#define NcGetGlobalFn(r)   NsGetGlobalFn(kNewtRefNIL, r)
#define NcDefGlobalFn(r, fn)   NsDefGlobalFn(kNewtRefNIL, r, fn)
#define NcUndefGlobalFn(r)   NsUndefGlobalFn(kNewtRefNIL, r)
#define NcGlobalVarExists(r)   NsGlobalVarExists(kNewtRefNIL, r)
#define NcGetGlobalVar(r)   NsGetGlobalVar(kNewtRefNIL, r)
#define NcDefGlobalVar(r, v)   NsDefGlobalVar(kNewtRefNIL, r, v)
#define NcUndefGlobalVar(r)   NsUndefGlobalVar(kNewtRefNIL, r)
#define NcDefMagicPointer(r, v)   NsDefMagicPointer(kNewtRefNIL, r, v)
#define NcGetRoot()   NsGetRoot(kNewtRefNIL)
#define NcGetGlobals()   NsGetGlobals(kNewtRefNIL)
#define NcGetGlobalFns()   NsGetGlobalFns(kNewtRefNIL)
#define NcGetMagicPointers()   NsGetMagicPointers(kNewtRefNIL)
#define NcGetSymTable()   NsGetSymTable(kNewtRefNIL)
#define NcHasGlobalFn(r)   NsGlobalFnExists(kNewtRefNIL, r)
#define NcHasGlobalVar(r)   NsGlobalVarExists(kNewtRefNIL, r)
#define NcSetGlobalVar(r, v)   NsDefGlobalVar(kNewtRefNIL, r, v)

関数

char * NewtDefaultEncoding (void)
void NewtInit (int argc, const char *argv[], int n)
void NewtCleanup (void)
newtRef NewtLookupSymbolTable (const char *name)
bool NewtHasGlobalFn (newtRefArg r)
bool NewtHasGlobalVar (newtRefArg r)
newtRef NsGlobalFnExists (newtRefArg rcvr, newtRefArg r)
newtRef NsGetGlobalFn (newtRefArg rcvr, newtRefArg r)
newtRef NsDefGlobalFn (newtRefArg rcvr, newtRefArg r, newtRefArg fn)
newtRef NsUndefGlobalFn (newtRefArg rcvr, newtRefArg r)
newtRef NsGlobalVarExists (newtRefArg rcvr, newtRefArg r)
newtRef NsGetGlobalVar (newtRefArg rcvr, newtRefArg r)
newtRef NsDefGlobalVar (newtRefArg rcvr, newtRefArg r, newtRefArg v)
newtRef NsUndefGlobalVar (newtRefArg rcvr, newtRefArg r)
newtRef NcResolveMagicPointer (newtRefArg r)
newtRef NsDefMagicPointer (newtRefArg rcvr, newtRefArg r, newtRefArg v)
newtRef NsGetRoot (newtRefArg rcvr)
newtRef NsGetGlobals (newtRefArg rcvr)
newtRef NsGetGlobalFns (newtRefArg rcvr)
newtRef NsGetMagicPointers (newtRefArg rcvr)
newtRef NsGetSymTable (newtRefArg rcvr)

変数

newt_env_t newt_env
 実行環境
newt_sym_t newt_sym
 よく使うシンボルの保管場所


説明

実行環境

作者:
M.Nukui
日付:
2003-11-07
Copyright (C) 2003-2004 M.Nukui All rights reserved.

NewtEnv.h で定義されています。


関数

newtRef NcResolveMagicPointer ( newtRefArg  r  ) 

マジックポインタの参照を解決する

引数:
r [in] マジックポインタ
戻り値:
オブジェクト

NewtEnv.c736 行で定義されています。

参照先 kNewtRefUnbindMAGIC_POINTERSNewtGetArraySlot()NewtLength()NewtRefIsMagicPointer.

参照元 NcFullLookupFrame()NcLexicalLookup()NcProtoLookupFrame()NewtAssignment()NewtHasLexical()NewtLexicalAssignment()NIOPrint()NIOPrintObj2()NsGetSlot()stk_pop().

関数の呼び出しグラフ:

void NewtCleanup ( void   ) 

インタプリタの後始末

戻り値:
なし

NewtEnv.c420 行で定義されています。

参照先 NEWT_POOLNewtMemFree()NewtPoolRelease().

参照元 newt_info()newt_interpret_file()newt_interpret_str().

関数の呼び出しグラフ:

char* NewtDefaultEncoding ( void   ) 

環境変数からデフォルトエンコーディングを取得

戻り値:
デフォルトエンコーディング(文字列)

NewtEnv.c83 行で定義されています。

参照先 NEWT_DEFAULT_ENCODING.

参照元 NewtReadNSOF()NsMakeNSOF().

bool NewtHasGlobalFn ( newtRefArg  r  ) 

グローバル関数の有無を調べる

引数:
r [in] シンボルオブジェクト
戻り値:
true グローバル関数が存在する
false グローバル関数が存在しない

NewtEnv.c459 行で定義されています。

参照先 GLOBAL_FNSNewtHasSlot().

参照元 NsGlobalFnExists().

関数の呼び出しグラフ:

bool NewtHasGlobalVar ( newtRefArg  r  ) 

グローバル変数の有無を調べる

引数:
r [in] シンボルオブジェクト
戻り値:
true グローバル変数が存在する
false グローバル変数が存在しない

NewtEnv.c474 行で定義されています。

参照先 GLOBALSNewtHasSlot().

参照元 is_find_and_set_var()is_find_var()NsGlobalVarExists()NVMHasVar().

関数の呼び出しグラフ:

void NewtInit ( int  argc,
const char *  argv[],
int  n 
)

インタプリタの初期化

引数:
argc [in] コマンドライン引数の数
argv [in] コマンドライン引数の配列
n [in] コマンドライン引数の位置
戻り値:
なし

NewtEnv.c405 行で定義されています。

参照先 NEWT_POOLNEWT_POOL_EXPANDSPACENewtInitEnv()NewtPoolAlloc().

参照元 newt_info()newt_interpret_file()newt_interpret_str().

関数の呼び出しグラフ:

newtRef NewtLookupSymbolTable ( const char *  name  ) 

シンボルテーブルからシンボルを検索する

引数:
name [in] シンボルの名前
戻り値:
シンボルオブジェクト

NewtEnv.c443 行で定義されています。

参照先 NewtLookupSymbol()SYM_TABLE.

参照元 NewtMakeSymbol().

関数の呼び出しグラフ:

newtRef NsDefGlobalFn ( newtRefArg  rcvr,
newtRefArg  r,
newtRefArg  fn 
)

グローバル関数の定義

引数:
rcvr [in] レシーバ
r [in] シンボルオブジェクト
fn [in] 関数オブジェクト
戻り値:
関数オブジェクト

NewtEnv.c544 行で定義されています。

参照先 GLOBAL_FNSNcSetSlot.

参照元 NVMInitGlobalFns0().

newtRef NsDefGlobalVar ( newtRefArg  rcvr,
newtRefArg  r,
newtRefArg  v 
)

グローバル変数に値をセットする

引数:
rcvr [in] レシーバ
r [in] シンボルオブジェクト
v [in] 値オブジェクト
戻り値:
オブジェクト

NewtEnv.c629 行で定義されています。

参照先 GLOBALSNcSetSlot.

参照元 NVMInitGlobalFns0().

newtRef NsDefMagicPointer ( newtRefArg  rcvr,
newtRefArg  r,
newtRefArg  v 
)

マジックポインタの定義

引数:
rcvr [in] レシーバ
r [in] マジックポインタ
v [in] オブジェクト
戻り値:
オブジェクト

NewtEnv.c776 行で定義されています。

参照先 kNewtRefUnbindMAGIC_POINTERSNewtLength()NewtRefIsInteger()NewtRefIsMagicPointerNewtRefToInteger()NewtSetArraySlot()NewtSetLength().

参照元 NVMInitGlobalFns0().

関数の呼び出しグラフ:

newtRef NsGetGlobalFn ( newtRefArg  rcvr,
newtRefArg  r 
)

グローバル関数の取得

引数:
rcvr [in] レシーバ
r [in] シンボルオブジェクト
戻り値:
関数オブジェクト

NewtEnv.c528 行で定義されています。

参照先 GLOBAL_FNSNcGetSlot.

参照元 NVMInitGlobalFns1().

newtRef NsGetGlobalFns ( newtRefArg  rcvr  ) 

グローバル関数テーブルの取得

引数:
rcvr [in] レシーバ
戻り値:
グローバル関数テーブル

NewtEnv.c848 行で定義されています。

参照先 GLOBAL_FNS.

newtRef NsGetGlobals ( newtRefArg  rcvr  ) 

グローバル変数テーブルの取得

引数:
rcvr [in] レシーバ
戻り値:
グローバル変数テーブル

NewtEnv.c834 行で定義されています。

参照先 GLOBALS.

参照元 NVMInitGlobalFns1().

newtRef NsGetGlobalVar ( newtRefArg  rcvr,
newtRefArg  r 
)

グローバル変数の取得

引数:
rcvr [in] レシーバ
r [in] シンボルオブジェクト
戻り値:
オブジェクト

NewtEnv.c613 行で定義されています。

参照先 GLOBALSNcGetSlot.

参照元 NVMInitGlobalFns1().

newtRef NsGetMagicPointers ( newtRefArg  rcvr  ) 

マジックポインタ関数テーブルの取得

引数:
rcvr [in] レシーバ
戻り値:
マジックポインタ関数テーブル

NewtEnv.c862 行で定義されています。

参照先 MAGIC_POINTERS.

newtRef NsGetRoot ( newtRefArg  rcvr  ) 

ルートオブジェクトの取得

引数:
rcvr [in] レシーバ
戻り値:
ルートオブジェクト

NewtEnv.c820 行で定義されています。

参照先 ROOT.

参照元 NVMInitGlobalFns1().

newtRef NsGetSymTable ( newtRefArg  rcvr  ) 

シンボルテーブルの取得

引数:
rcvr [in] レシーバ
戻り値:
シンボルテーブル

NewtEnv.c876 行で定義されています。

参照先 SYM_TABLE.

newtRef NsGlobalFnExists ( newtRefArg  rcvr,
newtRefArg  r 
)

グローバル関数の有無を調べる

引数:
rcvr [in] レシーバ
r [in] シンボルオブジェクト
戻り値:
TRUE グローバル関数が存在する
NIL グローバル関数が存在しない
覚え書き:
スクリプトからの呼出し用

NewtEnv.c493 行で定義されています。

参照先 NewtHasGlobalFn()NewtMakeBoolean.

参照元 NVMInitGlobalFns1().

関数の呼び出しグラフ:

newtRef NsGlobalVarExists ( newtRefArg  rcvr,
newtRefArg  r 
)

グローバル変数の有無を調べる

引数:
rcvr [in] レシーバ
r [in] シンボルオブジェクト
戻り値:
TRUE グローバル変数が存在する
NIL グローバル変数が存在しない
覚え書き:
スクリプトからの呼出し用

NewtEnv.c578 行で定義されています。

参照先 NewtHasGlobalVar()NewtMakeBoolean.

参照元 NVMInitGlobalFns1().

関数の呼び出しグラフ:

newtRef NsUndefGlobalFn ( newtRefArg  rcvr,
newtRefArg  r 
)

Undefine a global function.

引数:
rcvr [in] レシーバ
r [in] シンボルオブジェクト
戻り値:
NIL

NewtEnv.c559 行で定義されています。

参照先 GLOBAL_FNSkNewtRefNILNcRemoveSlot.

参照元 NVMInitGlobalFns1().

newtRef NsUndefGlobalVar ( newtRefArg  rcvr,
newtRefArg  r 
)

Undefine a global variable.

引数:
rcvr [in] レシーバ
r [in] シンボルオブジェクト
戻り値:
NIL

NewtEnv.c662 行で定義されています。

参照先 GLOBALSkNewtRefNILNcRemoveSlot.

参照元 NVMInitGlobalFns1().


NEWT/0に対してThu Nov 23 16:56:04 2006に生成されました。  doxygen 1.5.0