Path: blob/main/contrib/llvm-project/clang/include/clang-c/Rewrite.h
35233 views
/*===-- clang-c/Rewrite.h - C CXRewriter --------------------------*- C -*-===*\1|* *|2|* Part of the LLVM Project, under the Apache License v2.0 with LLVM *|3|* Exceptions. *|4|* See https://llvm.org/LICENSE.txt for license information. *|5|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception *|6|* *|7|*===----------------------------------------------------------------------===*/89#ifndef LLVM_CLANG_C_REWRITE_H10#define LLVM_CLANG_C_REWRITE_H1112#include "clang-c/CXString.h"13#include "clang-c/ExternC.h"14#include "clang-c/Index.h"15#include "clang-c/Platform.h"1617LLVM_CLANG_C_EXTERN_C_BEGIN1819typedef void *CXRewriter;2021/**22* Create CXRewriter.23*/24CINDEX_LINKAGE CXRewriter clang_CXRewriter_create(CXTranslationUnit TU);2526/**27* Insert the specified string at the specified location in the original buffer.28*/29CINDEX_LINKAGE void clang_CXRewriter_insertTextBefore(CXRewriter Rew, CXSourceLocation Loc,30const char *Insert);3132/**33* Replace the specified range of characters in the input with the specified34* replacement.35*/36CINDEX_LINKAGE void clang_CXRewriter_replaceText(CXRewriter Rew, CXSourceRange ToBeReplaced,37const char *Replacement);3839/**40* Remove the specified range.41*/42CINDEX_LINKAGE void clang_CXRewriter_removeText(CXRewriter Rew, CXSourceRange ToBeRemoved);4344/**45* Save all changed files to disk.46* Returns 1 if any files were not saved successfully, returns 0 otherwise.47*/48CINDEX_LINKAGE int clang_CXRewriter_overwriteChangedFiles(CXRewriter Rew);4950/**51* Write out rewritten version of the main file to stdout.52*/53CINDEX_LINKAGE void clang_CXRewriter_writeMainFileToStdOut(CXRewriter Rew);5455/**56* Free the given CXRewriter.57*/58CINDEX_LINKAGE void clang_CXRewriter_dispose(CXRewriter Rew);5960LLVM_CLANG_C_EXTERN_C_END6162#endif636465