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


Java WildcardType类代码示例

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


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

示例1: parameterLink

import com.sun.javadoc.WildcardType; //导入依赖的package包/类
/**
 * Appends to the current document the given type parameter
 * as a valid markdown link.
 * 
 * @param source Source package to start URL from.
 * @param type Target type parameter to reach from this package.
 */
private void parameterLink(final PackageDoc source, final Type type) {
	final WildcardType wildcard = type.asWildcardType();
	if (wildcard != null) {
		character('?');
	}
	else {
		final TypeVariable variableType = type.asTypeVariable();
		if (variableType != null) {
			final Type [] bounds = variableType.bounds();
			if (bounds.length > 0) {
				text("? extends ");
				for (int i = 0; i < bounds.length; i++) {
					typeLink(source, bounds[i]);
					if (i < bounds.length - 1) {
						text(" & ");
					}
				}
			}
		}
		else {
			typeLink(source, type);
		}
	}
}
 
开发者ID:Faylixe,项目名称:marklet,代码行数:32,代码来源:MarkletDocumentBuilder.java

示例2: parseTypeInfo

import com.sun.javadoc.WildcardType; //导入依赖的package包/类
protected TypeInfo parseTypeInfo(Type type) {
  TypeInfo typeInfoNode = objectFactory.createTypeInfo();
  typeInfoNode.setName(type.simpleTypeName());
  typeInfoNode.setDisplayName(type.simpleTypeName());
  if (type.isPrimitive()) {
    typeInfoNode.setIdentifier(type.qualifiedTypeName());
  } else {
    typeInfoNode.setIdentifier(parseIdentifier(type));
  }
  typeInfoNode.setFull(type.qualifiedTypeName());
  String dimension = type.dimension();
  if (dimension.length() > 0) {
    typeInfoNode.setDimension(dimension);
  }

  WildcardType wildcard = type.asWildcardType();
  if (wildcard != null) {
    typeInfoNode.setWildcard(parseWildcard(wildcard));
  }

  ParameterizedType parameterized = type.asParameterizedType();
  if (parameterized != null) {
    for (Type typeArgument : parameterized.typeArguments()) {
      typeInfoNode.getGeneric().add(parseTypeInfo(typeArgument));
    }
  }

  return typeInfoNode;
}
 
开发者ID:riptano,项目名称:xml-doclet,代码行数:30,代码来源:Parser.java

示例3: parseWildcard

import com.sun.javadoc.WildcardType; //导入依赖的package包/类
protected Wildcard parseWildcard(WildcardType wildcard) {
  Wildcard wildcardNode = objectFactory.createWildcard();

  for (Type extendType : wildcard.extendsBounds()) {
    wildcardNode.getExtendsBound().add(parseTypeInfo(extendType));
  }

  for (Type superType : wildcard.superBounds()) {
    wildcardNode.getSuperBound().add(parseTypeInfo(superType));
  }

  return wildcardNode;
}
 
开发者ID:riptano,项目名称:xml-doclet,代码行数:14,代码来源:Parser.java

示例4: processWildcardType

import com.sun.javadoc.WildcardType; //导入依赖的package包/类
/**
 * @return the full JSON for the given Type
 */
protected JSONObject processWildcardType(WildcardType wildcardType) {
    
    if (wildcardType == null) {
        return null;
    }
    
    JSONObject retMe = new JSONObject();
    
    retMe.put("extendsBounds", processTypes( wildcardType.extendsBounds() ) );
    retMe.put("superBounds", processTypes( wildcardType.superBounds() ) );

    return retMe;
}
 
开发者ID:rob4lderman,项目名称:javadoc-json-doclet,代码行数:17,代码来源:JsonDoclet.java

示例5: makeElementTypeInfo

import com.sun.javadoc.WildcardType; //导入依赖的package包/类
/**
 * Convert a javadoc Type object into an object of my TypeInfo class.
 * @param errInfo
 * @param type
 * @param errorContext
 * @return TypeInfo object
 * @throws GeneratorException
 */
private TypeInfo makeElementTypeInfo(ErrorInfo errInfo, Type type, String errorContext) throws GeneratorException {
	errInfo = errInfo.copy();
	
	if (type == null) return null;
	
	TypeInfo tinfo = null;

	WildcardType wtype = type.asWildcardType();
	
	String qname = type.qualifiedTypeName();
	if (wtype != null) {

		// Wildcard Parameter machen keinen Sinn.
		// Die Elemente werden sowohl als Konsument als auch als Produzent verwendet.
		// http://www.torsten-horn.de/techdocs/java-generics.htm#Wildcard-extends-versus-T-extends
		errInfo.msg = "Wildcard parameter types are unsupported, please replace type=\"" + type +"\" by \"Object\".";
		throw new GeneratorException(errInfo);
		
	}
	else {
		ParameterizedType ptype = type.asParameterizedType();
		List<TypeInfo> argInfos = getParameterizedTypeArgs(errInfo, ptype, errorContext);
		
		ClassDoc cls = type.asClassDoc();
		boolean isEnum = false;
		boolean isInline = false; 
		boolean isFinal = false;
		
		if (cls != null) {
			isEnum = cls.isEnum() || cls.isEnumConstant();
			isInline = isInline(cls);
			isFinal = cls.isFinal();
		}
		
		tinfo = classDB.createTypeInfo(
				type.simpleTypeName(),
				qname,
				type.dimension(),
				argInfos,
				isEnum, 
				isFinal, 
				isInline);
		
		makeSerialInfoForCollectionType(errInfo, tinfo);
	}
	

	return tinfo;
}
 
开发者ID:wolfgangimig,项目名称:byps,代码行数:58,代码来源:BConvert.java


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