12 out.
name = parm->getOriginalType().getAsString(pp);
18 spdlog::debug(
"Loaded parameter with name={}", out.
name);
20 out.
is_const = parm->getOriginalType().getNonReferenceType().isConstQualified();
21 out.
is_volatile = parm->getOriginalType().getNonReferenceType().isVolatileQualified();
22 out.
is_restrict = parm->getOriginalType().getNonReferenceType().isRestrictQualified();
23 out.
is_dependent = parm->getOriginalType().getNonReferenceType().getTypePtr()->isDependentType();
24 if(
const clang::TemplateSpecializationType* TST =
25 parm->getOriginalType().getCanonicalType().getNonReferenceType().getTypePtr()->getAs<
const clang::TemplateSpecializationType>()) {
27 TST->getTemplateName().print(OS, pp);
30 out.
is_template_param = parm->getOriginalType().getNonReferenceType().getTypePtr()->isTemplateTypeParmType();
32 out.
is_const = parm->getOriginalType().isConstQualified();
33 out.
is_volatile = parm->getOriginalType().isVolatileQualified();
34 out.
is_restrict = parm->getOriginalType().isRestrictQualified();
35 out.
is_dependent = parm->getOriginalType().getTypePtr()->isDependentType();
36 if(
const clang::TemplateSpecializationType* TST =
37 parm->getOriginalType().getCanonicalType().getTypePtr()->getAs<
const clang::TemplateSpecializationType>()) {
39 TST->getTemplateName().print(OS, pp);
42 out.
is_template_param = parm->getOriginalType().getTypePtr()->isTemplateTypeParmType();