本文整理汇总了C++中Constant::values方法的典型用法代码示例。如果您正苦于以下问题:C++ Constant::values方法的具体用法?C++ Constant::values怎么用?C++ Constant::values使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Constant
的用法示例。
在下文中一共展示了Constant::values方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: while
bool Node::isCompatibleModule(string modname)
{
ConfigManager* cm;
Config* conf;
Constant* constant;
std::list<Variant*> values;
std::list<Variant*>::iterator it;
bool compat;
compat = false;
if (((cm = ConfigManager::Get()) != NULL) && ((conf = cm->configByName(modname)) != NULL))
{
Attributes dtypes;
Variant* vptr;
std::string ext;
vptr = this->dataType();
ext = this->extension();
if (vptr != NULL && ((constant = conf->constantByName("mime-type")) != NULL))
{
dtypes = vptr->value<Attributes >();
values = constant->values();
for (Attributes::iterator mit = dtypes.begin(); mit != dtypes.end(); mit++)
{
if (mit->second->type() == typeId::String)
{
std::string dtype = mit->second->value<std::string>();
it = values.begin();
while (it != values.end() && !compat)
{
if ((*it)->type() == typeId::String && dtype.find((*it)->value<std::string>()) != std::string::npos)
compat = true;
it++;
}
}
}
delete vptr;
}
if (!ext.empty() && !compat && ((constant = conf->constantByName("extension-type")) != NULL))
{
values = constant->values();
it = values.begin();
while (it != values.end() && !compat)
{
if ((*it)->type() == typeId::String && (*it)->value<std::string>().find(ext) != std::string::npos)
compat = true;
it++;
}
}
}
return compat;
}