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


C++ Predicate::getParameters方法代码示例

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


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

示例1: initSchemes

void Database::initSchemes(vector<Predicate> schemes){
	for(int i = 0; i < (int)schemes.size(); i++){
		Predicate r = schemes[i];
		Relation r1(r.getID());
		for(int j = 0; j < (int)r.getParameters().size(); j++)
			r1.addParam(r.getParameters()[j].getValue());
		relations.push_back(r1);
	}
}
开发者ID:jrasm91,项目名称:cs236,代码行数:9,代码来源:database.cpp

示例2: initFacts

void Database::initFacts(vector<Predicate> facts){
	for(int i = 0; i < (int)facts.size(); i++){
		Predicate r = facts[i];
		string name = r.getID();
		Tuple t;
		for(int j = 0; j < (int)r.getParameters().size(); j++)
			t.push_back(r.getParameters()[j].getValue());
		addTuple(name, t);
	}
}
开发者ID:jrasm91,项目名称:cs236,代码行数:10,代码来源:database.cpp

示例3: performRename

Relation Database::performRename(Predicate query, Relation r){
	vector<int> indexes = performSearch(query, r);
	for(int i = 0; i < (int)indexes.size(); i++)
		r = r.rename(i, query.getParameters()[indexes[i]].getValue());

	return r;
}
开发者ID:jrasm91,项目名称:cs236,代码行数:7,代码来源:database.cpp

示例4: performSelect

Relation Database::performSelect(Predicate query, Relation r){
	vector<Parameter> params = query.getParameters();
	for(int j = 0; j < (int)params.size(); j++){
		if(params[j].getType() == "ID")
			for(int k = j + 1; k < (int)params.size(); k++)
				if(params[j].getValue() == params[k].getValue())
					r = r.select(j, k);
		if(params[j].getType() == "STRING")
			r = r.select(j, params[j].getValue());
	}
	return r;
}
开发者ID:jrasm91,项目名称:cs236,代码行数:12,代码来源:database.cpp

示例5:

vector<int> Database::performSearch(Predicate query, Relation r){

	vector<int> indexes = vector<int>();
	vector<Parameter> params = query.getParameters();
	for(int j = 0; j < (int)params.size(); j++){
		bool next = true;
		if(params[j].getType() == "ID"){
			next = false;
			for(int k = 0; k < j; k++)
				if(params[j].getValue() == params[k].getValue())
					next = true;
		}
		if(!next)
			indexes.push_back(j);
	}
	return indexes;
}
开发者ID:jrasm91,项目名称:cs236,代码行数:17,代码来源:database.cpp

示例6: addQuery

void DatalogProgram::addQuery(Predicate newQuery){
	queries.push_back(newQuery);
	addDomain(newQuery.getParameters());
}
开发者ID:abrinck,项目名称:cs236,代码行数:4,代码来源:DatalogProgram.cpp

示例7: addFact

void DatalogProgram::addFact(Predicate newFact){
	facts.push_back(newFact);
	addDomain(newFact.getParameters());
}
开发者ID:abrinck,项目名称:cs236,代码行数:4,代码来源:DatalogProgram.cpp

示例8: headPredicate

Rule::Rule(Predicate _headPredicate, vector<Predicate> _predicateList) : headPredicate(_headPredicate.getFirstString(), _headPredicate.getSecondString(), _headPredicate.getParameters())
{
    predicateList = _predicateList;
    headPredicate = _headPredicate;
}
开发者ID:victorlazaro,项目名称:Parser,代码行数:5,代码来源:Rule.cpp


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