compilationUnitInfo.cppStdIncludes.add("map");
stl = true;
parameterizedTypeName = "std::map";
}
name = f.newName(parameterizedTypeName.toCharArray());
final ICPPASTTemplateId templateId = f.newTemplateId(name);
for (final Object parameterTypeObject : parameterizedType.typeArguments()) {
final TypeInfo parameterTypeInfo = new TypeInfo((Type) parameterTypeObject, compilationUnitInfo);
final ICPPASTDeclarator parameterDeclarator = f.newDeclarator(f.newName());
if (parameterTypeInfo.isSimple()) {
parameterDeclarator.addPointerOperator(f.newPointer());
}
final IASTTypeId typeId = f.newTypeId(parameterTypeInfo.getDeclSpecifier(), parameterDeclarator);
templateId.addTemplateArgument(typeId);
}
return f.newTypedefNameSpecifier(templateId);
}