clang 18.0.0git
Protected Member Functions | Protected Attributes | List of all members
clang::ExtractAPIActionBase Class Reference

Base class to be used by front end actions to generate ExtarctAPI info. More...

#include "clang/ExtractAPI/ExtractAPIActionBase.h"

Inheritance diagram for clang::ExtractAPIActionBase:
Inheritance graph
[legend]

Protected Member Functions

void ImplEndSourceFileAction ()
 Implements EndSourceFileAction for Symbol-Graph generation.
 

Protected Attributes

std::unique_ptr< extractapi::APISetAPI
 A representation of the APIs this action extracts.
 
std::unique_ptr< raw_pwrite_stream > OS
 A stream to the output file of this action.
 
std::string ProductName
 The product this action is extracting API information for.
 
std::unique_ptr< llvm::MemoryBuffer > Buffer
 The synthesized input buffer that contains all the provided input header files.
 
extractapi::APIIgnoresList IgnoresList
 The list of symbols to ignore during serialization.
 

Detailed Description

Base class to be used by front end actions to generate ExtarctAPI info.

Deriving from this class equips an action with all the necessary tools to generate ExractAPI information in form of symbol-graphs

Definition at line 27 of file ExtractAPIActionBase.h.

Member Function Documentation

◆ ImplEndSourceFileAction()

void ExtractAPIActionBase::ImplEndSourceFileAction ( )
protected

Implements EndSourceFileAction for Symbol-Graph generation.

Use the serializer to generate output symbol graph files from the information gathered during the execution of Action.

Definition at line 378 of file ExtractAPIConsumer.cpp.

References API, IgnoresList, OS, and clang::extractapi::SymbolGraphSerializer::serialize().

Member Data Documentation

◆ API

std::unique_ptr<extractapi::APISet> clang::ExtractAPIActionBase::API
protected

A representation of the APIs this action extracts.

Definition at line 30 of file ExtractAPIActionBase.h.

Referenced by clang::ExtractAPIAction::CreateASTConsumer(), clang::WrappingExtractAPIAction::CreateASTConsumer(), and ImplEndSourceFileAction().

◆ Buffer

std::unique_ptr<llvm::MemoryBuffer> clang::ExtractAPIActionBase::Buffer
protected

The synthesized input buffer that contains all the provided input header files.

Definition at line 40 of file ExtractAPIActionBase.h.

◆ IgnoresList

extractapi::APIIgnoresList clang::ExtractAPIActionBase::IgnoresList
protected

The list of symbols to ignore during serialization.

Definition at line 43 of file ExtractAPIActionBase.h.

Referenced by clang::ExtractAPIAction::CreateASTConsumer(), clang::WrappingExtractAPIAction::CreateASTConsumer(), and ImplEndSourceFileAction().

◆ OS

std::unique_ptr<raw_pwrite_stream> clang::ExtractAPIActionBase::OS
protected

A stream to the output file of this action.

Definition at line 33 of file ExtractAPIActionBase.h.

Referenced by clang::ExtractAPIAction::CreateASTConsumer(), clang::WrappingExtractAPIAction::CreateASTConsumer(), and ImplEndSourceFileAction().

◆ ProductName

std::string clang::ExtractAPIActionBase::ProductName
protected

The product this action is extracting API information for.

Definition at line 36 of file ExtractAPIActionBase.h.

Referenced by clang::ExtractAPIAction::CreateASTConsumer(), and clang::WrappingExtractAPIAction::CreateASTConsumer().


The documentation for this class was generated from the following files: