本文整理汇总了C++中UlamType::getMax方法的典型用法代码示例。如果您正苦于以下问题:C++ UlamType::getMax方法的具体用法?C++ UlamType::getMax怎么用?C++ UlamType::getMax使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UlamType
的用法示例。
在下文中一共展示了UlamType::getMax方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: safeCast
FORECAST UlamTypePrimitiveUnary::safeCast(UTI typidx)
{
FORECAST scr = UlamType::safeCast(typidx);
if(scr != CAST_CLEAR)
return scr;
bool brtn = true;
UlamType * vut = m_state.getUlamTypeByIndex(typidx);
s32 valbitsize = vut->getBitSize();
s32 bitsize = getBitSize();
ULAMTYPE valtypEnum = vut->getUlamTypeEnum();
switch(valtypEnum)
{
case Unsigned:
{
u32 vwordsize = vut->getTotalWordSize();
if(vwordsize <= MAXBITSPERINT)
brtn = ((u32) bitsize >= (u32) vut->getMax());
else
brtn = ((u64) bitsize >= vut->getMax());
}
break;
case Unary:
brtn = (bitsize >= valbitsize);
break;
case Int:
case Bool:
case Bits:
case Void:
case UAtom:
case Class:
brtn = false;
break;
default:
m_state.abortUndefinedUlamType();
//std::cerr << "UlamTypePrimitiveUnary (cast) error! Value Type was: " << valtypidx << std::endl;
brtn = false;
};
return brtn ? CAST_CLEAR : CAST_BAD;
} //safeCast