#include "NewtType.h"
データ構造 | |
| struct | newtpool_t |
| メモリプール [詳細] | |
| struct | newtStack |
| スタック [詳細] | |
型定義 | |
| typedef newtpool_t * | newtPool |
| メモリプールへのポインタ | |
関数 | |
| newtPool | NewtPoolAlloc (int32_t expandspace) |
| void * | NewtMemAlloc (newtPool pool, size_t size) |
| void * | NewtMemCalloc (newtPool pool, size_t number, size_t size) |
| void * | NewtMemRealloc (newtPool pool, void *ptr, size_t size) |
| void | NewtMemFree (void *ptr) |
| void | NewtStackSetup (newtStack *stackinfo, newtPool pool, uint32_t datasize, uint32_t blocksize) |
| bool | NewtStackExpand (newtStack *stackinfo, uint32_t n) |
| void | NewtStackSlim (newtStack *stackinfo, uint32_t n) |
| void | NewtStackFree (newtStack *stackinfo) |
| uint32_t | NewtAlign (uint32_t n, uint16_t byte) |
NewtMem.h で定義されています。
| uint32_t NewtAlign | ( | uint32_t | n, | |
| uint16_t | byte | |||
| ) |
アラインを計算
| n | [in] アラインする値 | |
| byte | [in] アラインされる単位 |
| void* NewtMemAlloc | ( | newtPool | pool, | |
| size_t | size | |||
| ) |
メモリプールから指定されたサイズのメモリを確保する
| pool | [in] メモリプール | |
| size | [in] データサイズ |
参照元 NewtObjChainAlloc().
| void* NewtMemCalloc | ( | newtPool | pool, | |
| size_t | number, | |||
| size_t | size | |||
| ) |
メモリプールから指定されたサイズのメモリを確保する
| pool | [in] メモリプール | |
| number | [in] データ数 | |
| size | [in] データサイズ |
参照元 NBCEnvNew().
| void NewtMemFree | ( | void * | ptr | ) |
メモリを解放する
| ptr | [in] メモリへのポインタ |
参照元 NBCEnvFree()・NewtCleanup()・NewtObjChainAlloc()・NewtObjFree()・NewtStackFree().
| void* NewtMemRealloc | ( | newtPool | pool, | |
| void * | ptr, | |||
| size_t | size | |||
| ) |
メモリプールから指定されたサイズのメモリを再確保する
| pool | [in] メモリプール | |
| ptr | [in] メモリへのポインタ | |
| size | [in] データサイズ |
| newtPool NewtPoolAlloc | ( | int32_t | expandspace | ) |
メモリプールの確保
| expandspace | [in] ブロックの拡張サイズ |
参照先 newtpool_t::expandspace・newtpool_t::maxspace.
参照元 NewtInit().
| bool NewtStackExpand | ( | newtStack * | stackinfo, | |
| uint32_t | n | |||
| ) |
スタックを拡張
| stackinfo | [in] スタック情報 | |
| n | [in] 必要とされているスタック長 |
| true | 必要なだけ確保されている | |
| false | 確保できなかった |
参照先 newtStack::blocksize・newtStack::datasize・NewtMemRealloc()・newtStack::nums・newtStack::pool・newtStack::stackp.
参照元 excp_push()・NBCGenCodeEnv()・NBCPushBreakStack()・NBCPushOnexcpStack()・NPSGenNode2()・reg_push()・stk_push().
関数の呼び出しグラフ:

| void NewtStackFree | ( | newtStack * | stackinfo | ) |
スタックを解放
| stackinfo | [in] スタック情報 |
参照先 NewtMemFree()・newtStack::nums・newtStack::sp・newtStack::stackp.
参照元 NBCEnvFree()・NewtStackSlim()・NPSCleanup()・NVMCleanSTACK().
関数の呼び出しグラフ:

スタック情報をセットアップ
| stackinfo | [out]スタック情報 | |
| pool | [in] メモリプール | |
| datasize | [in] データサイズ | |
| blocksize | [in] ブロックサイズ |
参照先 newtStack::blocksize・newtStack::datasize・newtStack::pool.
参照元 NBCEnvNew()・NBCPushBreakStack()・NBCPushOnexcpStack()・NPSInit()・NVMInitSTACK().
| void NewtStackSlim | ( | newtStack * | stackinfo, | |
| uint32_t | n | |||
| ) |
スタックをスリム化
| stackinfo | [in] スタック情報 | |
| n | [in] 必要とされているスタック長 |
参照先 newtStack::datasize・NewtMemRealloc()・NewtStackFree()・newtStack::nums・newtStack::pool・newtStack::stackp.
参照元 NPSParse().
関数の呼び出しグラフ:

1.5.0