ClipParam constructor

ClipParam([
  1. int num = 0,
  2. ClipParam? parentParam,
  3. bool inherit = false
])

Implementation

ClipParam( [int num = 0, ClipParam? parentParam, bool inherit = false] ){
	// 呼び出し元情報
	_parentNum = (parentParam == null) ? 0 : (
		parentParam._fileFlag ? ((parentParam._topNum > 0) ? num - parentParam._topNum + 1 : num) : 0
		);
	_parentFunc = (parentParam == null) ? "" : (
		(parentParam._funcName == null) ? "" : parentParam._funcName!
		);

	if( parentParam == null ){
		inherit = false;
	}
	_calculator = inherit ? parentParam!._calculator : false;
	_base       = inherit ? parentParam!._base       : 0;
	_mode       = inherit ? parentParam!._mode       : ClipGlobal.defMode;
	_fps        = inherit ? parentParam!._fps        : ClipGlobal.defFps;
	_prec       = inherit ? parentParam!._prec       : ClipGlobal.defPrec;
	_radix      = inherit ? parentParam!._radix      : ClipGlobal.defRadix;
	_mpPrec     = inherit ? parentParam!._mpPrec     : ClipGlobal.defMPPrec;
	_mpRound    = inherit ? parentParam!._mpRound    : ClipGlobal.defMPRound;

	if( parentParam != null ){
		_saveMode = parentParam._mode;
		_saveFps  = parentParam._fps;
	}
	updateMode();
	updateFps();

	_saveRadix = _radix;

	_var   = ClipVariable();
	_array = ClipArray();
	_func  = ClipFunc();

	// 外部関数関連
	_funcName    = null;
	_fileData    = null;
	_fileDataGet = 0;
	_fileLine    = null;
	_fileFlag    = false;
	_topNum      = 0;
	_lineNum     = 1;

	// 各種フラグ
	_enableCommand = true;
	_enableOpPow   = false;
	_enableStat    = true;
	_printAns      = true;
	_assFlag       = false;
	_subStep       = 0;

	_parent = null;

	// 親プロセスのパラメータ値を更新するかどうかのフラグ
	_updateParam      = List.filled( 10, false );
	_updateParamCode  = [];
	_updateParamIndex = [];

	// 親プロセスの変数・配列を更新するかどうかのフラグ
	_updateParentVar   = [];
	_updateParentArray = [];

	_defNameSpace = null;
	_nameSpace    = null;

	_seFlag  = false;
	_seToken = ClipGlobal.seNull;

	_mpFlag = false;

	_replace = [];
	if( parentParam != null ){
		for( int i = 0; i < parentParam._replace.length; i++ ){
			_replace.add( _ClipReplace(
				parentParam._replace[i]._descCode,
				parentParam._replace[i]._descToken,
				parentParam._replace[i]._realCode,
				parentParam._replace[i]._realToken
				) );
		}
	}
}