예제 #1
0
파일: svalue.cpp 프로젝트: ufasoft/lisp
CP CIntFuncValue::GetField(size_t idx) {		//!!!CLISP
	switch (idx) {
	case 0: return m_name;
	case 1: return m_form;
	case 2: return m_docstring;
	case 3: return m_body;
	case 4: return m_env.m_varEnv;
	case 5: return m_env.m_funEnv;
	case 6: return m_env.m_blockEnv;
	case 7: return m_env.m_goEnv;
	case 8: return m_env.m_declEnv;
	case 9: return m_vars;
	case 10: return m_optInits;
	case 11: return m_keyInits;
	case 12: return CreateFixnum(m_nReq);
	case 13: return CreateFixnum(m_nOpt);
	case 14: return m_auxInits;
	case 16: return m_keywords;
	case 18: return FromBool(m_bAllowFlag);
	case 19: return FromBool(m_bRestFlag);
	default:
		if (idx < 12)
			return ((CP*)this)[idx];
		else
			Lisp().E_ProgramErr();
	}
}
예제 #2
0
UCVarValue FFlagCVar::GetGenericRepDefault (ECVarType type) const
{
	ECVarType dummy;
	UCVarValue def;
	def = ValueVar.GetFavoriteRepDefault (&dummy);
	return FromBool ((def.Int & BitVal) != 0, type);
}
예제 #3
0
UCVarValue FBoolCVar::GetGenericRepDefault (ECVarType type) const
{
	return FromBool (DefaultValue, type);
}
예제 #4
0
UCVarValue FBoolCVar::GetGenericRep (ECVarType type) const
{
	return FromBool (Value, type);
}
예제 #5
0
UCVarValue FFlagCVar::GetGenericRep (ECVarType type) const
{
	return FromBool ((ValueVar & BitVal) != 0, type);
}