当前位置: 首页>>代码示例>>C++>>正文


C++ Ptr::GetLength方法代码示例

本文整理汇总了C++中dictionary::Ptr::GetLength方法的典型用法代码示例。如果您正苦于以下问题:C++ Ptr::GetLength方法的具体用法?C++ Ptr::GetLength怎么用?C++ Ptr::GetLength使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在dictionary::Ptr的用法示例。


在下文中一共展示了Ptr::GetLength方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: ToBool

bool Value::ToBool(void) const
{
	switch (GetType()) {
		case ValueNumber:
			return static_cast<bool>(boost::get<double>(m_Value));

		case ValueBoolean:
			return boost::get<bool>(m_Value);

		case ValueString:
			return !boost::get<String>(m_Value).IsEmpty();

		case ValueObject:
			if (IsObjectType<Dictionary>()) {
				Dictionary::Ptr dictionary = *this;
				return dictionary->GetLength() > 0;
			} else if (IsObjectType<Array>()) {
				Array::Ptr array = *this;
				return array->GetLength() > 0;
			} else {
				return true;
			}

		case ValueEmpty:
			return false;

		default:
			BOOST_THROW_EXCEPTION(std::runtime_error("Invalid variant type."));
	}
}
开发者ID:TheFlyingCorpse,项目名称:icinga2,代码行数:30,代码来源:value.cpp

示例2: PrintLoggers

void TroubleshootCommand::PrintLoggers(InfoLog& log, Dictionary::Ptr& logs)
{
	if (!logs->GetLength()) {
		InfoLogLine(log, 0, LogWarning)
			<< "No loggers found, check whether you enabled any logging features\n";
	} else {
		InfoLogLine(log)
			<< "Getting the last 20 lines of " << logs->GetLength() << " FileLogger objects.\n";

		ObjectLock ulock(logs);
		for (const Dictionary::Pair& kv : logs) {
			InfoLogLine(log)
				<< "Logger " << kv.first << " at path: " << kv.second << '\n';

			if (!Tail(kv.second, 20, log)) {
				InfoLogLine(log, 0, LogWarning)
					<< kv.second << " either does not exist or is empty\n";
			}
		}
	}
}
开发者ID:gunnarbeutner,项目名称:icinga2,代码行数:21,代码来源:troubleshootcommand.cpp

示例3: Len

double ScriptUtils::Len(const Value& value)
{
	if (value.IsObjectType<Dictionary>()) {
		Dictionary::Ptr dict = value;
		return dict->GetLength();
	} else if (value.IsObjectType<Array>()) {
		Array::Ptr array = value;
		return array->GetLength();
	} else if (value.IsString()) {
		return Convert::ToString(value).GetLength();
	} else {
		return 0;
	}
}
开发者ID:TheFlyingCorpse,项目名称:icinga2,代码行数:14,代码来源:scriptutils.cpp

示例4: DictionaryLen

static double DictionaryLen(void)
{
	ScriptFrame *vframe = ScriptFrame::GetCurrentFrame();
	Dictionary::Ptr self = static_cast<Dictionary::Ptr>(vframe->Self);
	return self->GetLength();
}
开发者ID:annafw,项目名称:icinga2,代码行数:6,代码来源:dictionary-script.cpp


注:本文中的dictionary::Ptr::GetLength方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。