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


Java MetaMethod.getNativeParameterTypes方法代码示例

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


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

示例1: getConflictClasses

import groovy.lang.MetaMethod; //导入方法依赖的package包/类
private static List<Pair<Class,Class>> getConflictClasses(List<MetaMethod> sugg, Class[] argumentClasses) {
    List<Pair<Class,Class>> ret = new LinkedList<Pair<Class,Class>>();
    Set<Class> recordedClasses = new HashSet<Class>();
    for (MetaMethod method : sugg) {
        Class[] para = method.getNativeParameterTypes();
        for (Class aPara : para) {
            if (recordedClasses.contains(aPara)) continue;
            for (Class argumentClass : argumentClasses) {
                if (argumentClass == null) continue;
                if (argumentClass == aPara) continue;
                if (argumentClass.getName().equals(aPara.getName())) {
                    ret.add(new Pair<Class, Class>(argumentClass, aPara));
                }
            }
            recordedClasses.add(aPara);
        }
    }
    return ret;
}
 
开发者ID:apache,项目名称:groovy,代码行数:20,代码来源:MethodRankHelper.java

示例2: adjustParamTypesForStdMethods

import groovy.lang.MetaMethod; //导入方法依赖的package包/类
private static MetaMethod adjustParamTypesForStdMethods(MetaMethod metaMethod, String methodName) {
    Class[] nativeParamTypes = metaMethod.getNativeParameterTypes();
    nativeParamTypes = (nativeParamTypes != null) ? nativeParamTypes : EMPTY_CLASS_ARRAY;
    // for methodMissing, first parameter should be String type - to allow overriding of this method without
    // type String explicitly specified for first parameter (missing method name) - GROOVY-2951
    if("methodMissing".equals(methodName) && nativeParamTypes.length == 2 && nativeParamTypes[0] != String.class) {
        nativeParamTypes[0] = String.class;
    }
    return metaMethod;
}
 
开发者ID:apache,项目名称:groovy,代码行数:11,代码来源:ClosureMetaMethod.java

示例3: makeParameterTypes

import groovy.lang.MetaMethod; //导入方法依赖的package包/类
private Class[] makeParameterTypes(Object owner, MetaMethod m) {
    Class[] newParameterTypes;

    if (owner instanceof Class && !m.isStatic()) {
        Class[] nativeParameterTypes = m.getNativeParameterTypes();
        newParameterTypes = new Class[nativeParameterTypes.length + 1];

        System.arraycopy(nativeParameterTypes, 0, newParameterTypes, 1, nativeParameterTypes.length);
        newParameterTypes[0] = (Class) owner;
    } else {
        newParameterTypes = m.getNativeParameterTypes();
    }

    return newParameterTypes;
}
 
开发者ID:apache,项目名称:groovy,代码行数:16,代码来源:MethodClosure.java

示例4: TransformMetaMethod

import groovy.lang.MetaMethod; //导入方法依赖的package包/类
public TransformMetaMethod(MetaMethod metaMethod) {
    this.metaMethod = metaMethod;
    setParametersTypes(metaMethod.getParameterTypes());
    nativeParamTypes = metaMethod.getNativeParameterTypes();
}
 
开发者ID:apache,项目名称:groovy,代码行数:6,代码来源:TransformMetaMethod.java


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