private List<CsmSpecializationParameter> extractInstantiationParams(CsmType instType) { List<CsmSpecializationParameter> params = instType.getInstantiationParams(); if (hasVariadicParams(params)) { params = expandVariadicParams(params); } return params; }
@Override public List<CsmSpecializationParameter> getInstantiationParams() { return type.getInstantiationParams(); }
@Override public List<CsmSpecializationParameter> getInstantiationParams() { return type.getInstantiationParams(); }
@Override public List<CsmSpecializationParameter> getInstantiationParams() { return type.getInstantiationParams(); }
@Override public List<CsmSpecializationParameter> getInstantiationParams() { return delegate.getInstantiationParams(); }
public static CharSequence getInstantiationText(CsmType type) { if (type.hasInstantiationParams()) { StringBuilder sb = new StringBuilder(); sb.append('<'); boolean first = true; for (CsmSpecializationParameter param : type.getInstantiationParams()) { if (first) { first = false; } else { sb.append(','); } sb.append(param.getText()); } TemplateUtils.addGREATERTHAN(sb); return sb; } return CharSequences.empty(); }
@Override public List<CsmSpecializationParameter> getInstantiationParams() { if (!originalType.isInstantiation()) { return Collections.emptyList(); } List<CsmSpecializationParameter> res = new ArrayList<>(); for (CsmSpecializationParameter instParam : originalType.getInstantiationParams()) { if (CsmKindUtilities.isTypeBasedSpecalizationParameter(instParam) && CsmKindUtilities.isTemplateParameterType(((CsmTypeBasedSpecializationParameter) instParam).getType())) { CsmTemplateParameterType paramType = (CsmTemplateParameterType) ((CsmTypeBasedSpecializationParameter) instParam).getType(); CsmSpecializationParameter newTp = instantiation.getMapping().get(paramType.getParameter()); if (newTp != null && newTp != instParam) { res.add(newTp); } else { res.add(instParam); } } else { res.add(instParam); } } return res; }
public CsmObject instantiate(CsmTemplate template, CsmType type, boolean specialize) { CsmResolveContext context = getLastResolveContext(); CsmFile contextFile = (context != null) ? context.getFile() : null; int contextOffset = (context != null) ? context.getOffset() : 0; return instantiate(template, contextFile, contextOffset, type.getInstantiationParams(), specialize); }
itemTextBuilder.append(resolvedCls.getQualifiedName()); if (type.isInstantiation() && type.hasInstantiationParams()) { itemTextBuilder.append(Instantiation.getInstantiationCanonicalText(type.getInstantiationParams())); } else if (CsmKindUtilities.isInstantiation(resolvedCls)) { List<Pair<CsmSpecializationParameter, List<CsmInstantiation>>> fullInstParams = InstantiationProviderImpl.getInstantiationParams(resolvedCls);
CsmType instType = tryGetInstantiationType(type); if (instType != null) { List<CsmSpecializationParameter> params = instType.getInstantiationParams(); if (params != null) { for (int i = 0; i < params.size(); i++) {
CsmType paramTemplateType = paramType.getTemplateType(); if (paramTemplateType != null) { List<CsmSpecializationParameter> paramInstParams = paramTemplateType.getInstantiationParams(); if (!paramInstParams.isEmpty()) { List<CsmSpecializationParameter> newInstParams = new ArrayList<>(newType.getInstantiationParams()); boolean updateInstParams = false; for (CsmSpecializationParameter param : paramInstParams) {
if (type != null && !type.getInstantiationParams().isEmpty()) { CsmSpecializationParameter param = CsmOffsetUtilities.findObject(type.getInstantiationParams(), null, offset); if (param != null && !CsmOffsetUtilities.sameOffsets(type, param)) { if (CsmKindUtilities.isTypeBasedSpecalizationParameter(param)) { if (!type.getInstantiationParams().isEmpty()) { CsmSpecializationParameter param = CsmOffsetUtilities.findObject(type.getInstantiationParams(), null, offset); if (param != null && !CsmOffsetUtilities.sameOffsets(type, param)) { if (CsmKindUtilities.isTypeBasedSpecalizationParameter(param)) {