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


C++ QueryData::getVarDecType方法代码示例

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


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

示例1: validatePTClause

void QTreeValidator::validatePTClause(QueryData & queryData, PTClauseEntry * ptClausePtr, const std::vector<std::string>& synList)
{
	QEvalPTClause *evalPtClause = new QEvalPTClause();

	evalPtClause->ptType = ptClausePtr->getPatternType();

	idx_t tmpIdx = getVarArgIdx(synList, ptClausePtr->getSynonym());

	assert(ARG_IDX_NOT_FOUND != tmpIdx);
	assert(isDecArgStmtType(queryData.getVarDecType(tmpIdx)));
	
	evalPtClause->stmt = tmpIdx;

	determineVar(evalPtClause->var, evalPtClause->varArgType, ptClausePtr->getFirstParameter(), synList, true);

	if (evalPtClause->ptType == PTClauseType::PT_Assign) {
		std::string patternStr = ptClausePtr->getSecondParameter();
		if (isImplicit(patternStr)) {
			evalPtClause->pattern = "";
			evalPtClause->completeMatch = false;
		}
		else if (isDoubleQuoted(patternStr)) {
			evalPtClause->pattern = dropDoubleQuote(patternStr);
			evalPtClause->completeMatch = true;
		}
		else if (isUnderlineDoubleQuoted(patternStr)) {
			evalPtClause->pattern = dropUnderlineDoubleQuote(patternStr);
			evalPtClause->completeMatch = false;
		}
		else {
			assert(false);
		}
	}

	evalPtClause->inVarArgIdxSet.insert(evalPtClause->stmt);
	if (ArgType::DECVAR == evalPtClause->varArgType) {
		evalPtClause->inVarArgIdxSet.insert(evalPtClause->var);
	}

	queryData.appendQEvalClause(evalPtClause);
}
开发者ID:Pingxia,项目名称:CS3202_SPA,代码行数:41,代码来源:qtreevalidator.cpp


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