17#include "clang/AST/DeclCXX.h"
18#include "clang/AST/PrettyPrinter.h"
19#include "clang/Basic/SourceManager.h"
20#include "llvm/Support/raw_ostream.h"
37 void tabit(raw_ostream &os,
int tabn) {
38 for (
int i = 0; i < tabn; i++) {
43 string strip(
string s,
string sub) {
45 size_t pos = s.find(sub);
47 if (pos == string::npos) {
51 return s.erase(pos, sub.length());
55 for (
unsigned int i = 0; i < vecInput.size(); i++) {
56 for (
unsigned int j = 0; j < vecInput.size(); j++) {
57 if (i != j && vecInput.at(i) == vecInput.at(j)) {
58 vecInput.erase(vecInput.begin() + j);
65 template <
typename vec,
typename element>
67 for (
unsigned int i = 0; i < vecInput.size(); i++) {
68 if (elemInput == vecInput.at(i)) {
77 return string(
"NULL");
80 clang::LangOptions LangOpts;
81 LangOpts.CPlusPlus =
true;
82 clang::PrintingPolicy Policy(LangOpts);
86 llvm::raw_string_ostream s(TypeS);
88 exp->printPretty(s, 0, Policy);
vec removeDuplicate(vec vecInput)
string strip(string s, string sub)
string getArgumentName(expressionArg *exp)
bool isElementPresent(vec vecInput, element elemInput)
void tabit(raw_ostream &os, int tabn)
Clang forward declarations.