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


Java IStrategoConstructor.getArity方法代码示例

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


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

示例1: doSlowMatch

import org.spoofax.interpreter.terms.IStrategoConstructor; //导入方法依赖的package包/类
@Override
protected boolean doSlowMatch(IStrategoTerm second, int commonStorageType) {
	if (second == this)
		return true;
	if (second == null || second.getTermType() != CTOR)
		return false;
	
	IStrategoConstructor other = (IStrategoConstructor) second;
	
    return name.equals(other.getName()) && arity == other.getArity();
}
 
开发者ID:metaborg,项目名称:mb-rep,代码行数:12,代码来源:StrategoConstructor.java

示例2: hasConstructor

import org.spoofax.interpreter.terms.IStrategoConstructor; //导入方法依赖的package包/类
public static boolean hasConstructor(IStrategoAppl t, String ctorName, int arity) {
	final IStrategoConstructor constructor = t.getConstructor();
	return constructor.getName().equals(ctorName) && constructor.getArity() == arity;
}
 
开发者ID:metaborg,项目名称:mb-exec,代码行数:5,代码来源:Tools.java

示例3: isInjection

import org.spoofax.interpreter.terms.IStrategoConstructor; //导入方法依赖的package包/类
private boolean isInjection(IStrategoNamed prod) {

        // Injections are terms on the following form:
        // . prod([<term>],cf(<term>),<term>)
        // . prod([<term>],lex(sort(<str>)),<term>)
        // . lit(<str>)

        // TODO: optimize - use constants for these constructors (a la parseproductionreader)

        if(!prod.getName().equals("prod"))
            return false;


        if(prod.getSubterm(1).getTermType() != APPL)
            return false;

        final String nm = ((IStrategoNamed) prod.getSubterm(1)).getName();

        if(!(nm.equals("cf") || nm.equals("lex")))
            return false;

        if(prod.getSubterm(0).getTermType() != LIST)
            return false;

        IStrategoList ls = ((IStrategoList) prod.getSubterm(0));

        if(ls.getSubtermCount() != 1)
            return false;

        if(ls.head().getTermType() != APPL)
            return false;

        final IStrategoConstructor fun = ((IStrategoAppl) ls.head()).getConstructor();
        return !(fun.getName().equals("lit") && fun.getArity() == 1);
    }
 
开发者ID:metaborg,项目名称:jsglr,代码行数:36,代码来源:ParseTable.java


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