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


Java ICPPASTTemplateParameter类代码示例

本文整理汇总了Java中org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter的典型用法代码示例。如果您正苦于以下问题:Java ICPPASTTemplateParameter类的具体用法?Java ICPPASTTemplateParameter怎么用?Java ICPPASTTemplateParameter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


ICPPASTTemplateParameter类属于org.eclipse.cdt.core.dom.ast.cpp包,在下文中一共展示了ICPPASTTemplateParameter类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: evaluate

import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter; //导入依赖的package包/类
/**
 * Attempts to evaluate the given template parameter
 *
 * @param parameter Template parameter
 */
@SuppressWarnings("unused")
private void evaluate(ICPPASTTemplateParameter parameter) throws DOMException {
    if (parameter == null) {
        return;
    } else if (parameter instanceof CPPASTParameterDeclaration) {
        CPPASTParameterDeclaration parameterDeclaration = (CPPASTParameterDeclaration) parameter;

        evaluate(parameterDeclaration.getDeclarator());
        evaluate(parameterDeclaration.getDeclSpecifier());
    } else if (parameter instanceof ICPPASTSimpleTypeTemplateParameter) {
        ICPPASTSimpleTypeTemplateParameter simpleTypeTemplateParameter = (ICPPASTSimpleTypeTemplateParameter) parameter;

        evaluate(simpleTypeTemplateParameter.getDefaultType());
    } else if (parameter instanceof ICPPASTTemplatedTypeTemplateParameter) {
        ICPPASTTemplatedTypeTemplateParameter templatedTypeTemplateParameter = (ICPPASTTemplatedTypeTemplateParameter) parameter;

        evaluate(templatedTypeTemplateParameter.getDefaultValue());

        for (ICPPASTTemplateParameter childParameter : templatedTypeTemplateParameter.getTemplateParameters()) {
            evaluate(childParameter);
        }
    }
}
 
开发者ID:dheraclio,项目名称:dependometer,代码行数:29,代码来源:SourceFileParser.java

示例2: visit

import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter; //导入依赖的package包/类
@Override
public int visit(ICPPASTTemplateParameter node) {
	return super.visit(node);
}
 
开发者ID:Synectique,项目名称:VerveineC-Cpp,代码行数:5,代码来源:AbstractDispatcherVisitor.java

示例3: visit

import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter; //导入依赖的package包/类
@Override
protected int visit(ICPPASTTemplateDeclaration node) {
	ContainerEntity theTemplate = null;   // not really needed, but looks nicer

	returnedEntity = null;
	node.getDeclaration().accept(this);
	theTemplate = (ContainerEntity)returnedEntity;

	// template parameters are local to the entity defined in the template declaration
	getContext().push(theTemplate);
	for (ICPPASTTemplateParameter param : node.getTemplateParameters()) {
		String name;

		if (param instanceof ICPPASTSimpleTypeTemplateParameter ) {
			// a variable for a parameter type
			name = ((ICPPASTSimpleTypeTemplateParameter)param).getName().toString();
			dico.createParameterType( name, /*owner*/theTemplate);
		}

		else if (param instanceof ICPPASTTemplatedTypeTemplateParameter ) {
			// a variable for a parameter type that is itself a template
			name = ((ICPPASTTemplatedTypeTemplateParameter)param).getName().toString();
			dico.createParameterType( name, /*owner*/theTemplate);
		}

		else if (param instanceof ICPPASTParameterDeclaration ) {
			IBinding bnd;
			// non type parameter for a template (such has N in "template <Class T, size_t N> class List ...")
			// should represent them as Parameters but implies redefining ParameterizableClass
			// use UnknownVariable as a temporary(!) workaround
			name = ((ICPPASTParameterDeclaration)param).getDeclarator().getName().toString();
			bnd = resolver.mkStubKey( name, UnknownVariable.class);
			dico.ensureFamixUnknownVariable( bnd, name, /*parent*/getContext().topPckg());
		}

		else {
			// should not happen
			throw new IllegalStateException("Unrecognized type for ICPPASTTemplateParameter `"+param.getRawSignature()+"' in file "+node.getContainingFilename());
		}
	}
	getContext().pop();

	return PROCESS_SKIP;
}
 
开发者ID:Synectique,项目名称:VerveineC-Cpp,代码行数:45,代码来源:TemplateParameterDefVisitor.java

示例4: visit

import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter; //导入依赖的package包/类
@Override
public int visit(final ICPPASTTemplateParameter templateParameter) {
	preVisit(templateParameter);
	return super.visit(templateParameter);
}
 
开发者ID:mast-group,项目名称:tassal,代码行数:6,代码来源:AbstractCdtASTAnnotatedTokenizer.java

示例5: visit

import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter; //导入依赖的package包/类
public int visit(ICPPASTTemplateParameter templateParameter) {
       templateParameters.add(templateParameter);
	return PROCESS_CONTINUE;
}
 
开发者ID:magicsky,项目名称:sya,代码行数:5,代码来源:CPPASTTemplateParametersVisitor.java


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