Index: include/clang/AST/TemplateArgumentVisitor.h =================================================================== --- /dev/null +++ include/clang/AST/TemplateArgumentVisitor.h @@ -0,0 +1,117 @@ +//===- TemplateArgumentVisitor.h - Visitor for TArg subclasses --*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file defines the TemplateArgumentVisitor interface. +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_CLANG_AST_TEMPLATEARGUMENTVISITOR_H +#define LLVM_CLANG_AST_TEMPLATEARGUMENTVISITOR_H + +#include "clang/AST/TemplateBase.h" + +namespace clang { + +namespace templateargumentvisitor { + +template struct make_ref { using type = T &; }; +template struct make_const_ref { using type = const T &; }; + +/// A simple visitor class that helps create template argument visitors. +template