OmniSciDB  0bd2ec9cf4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
UdfClangDriver Class Reference

#include <UDFCompiler.h>

+ Collaboration diagram for UdfClangDriver:

Public Member Functions

 UdfClangDriver ()
 
std::string getClangPath ()
 
clang::driver::Driver * getClangDriver ()
 

Private Attributes

std::string clang_path
 
llvm::IntrusiveRefCntPtr
< clang::DiagnosticOptions > 
diag_options
 
clang::DiagnosticConsumer * diag_client
 
llvm::IntrusiveRefCntPtr
< clang::DiagnosticIDs > 
diag_id
 
clang::DiagnosticsEngine diags
 
std::unique_ptr
< clang::DiagnosticConsumer > 
diag_client_owner
 
clang::driver::Driver the_driver
 

Detailed Description

Definition at line 34 of file UDFCompiler.h.

Constructor & Destructor Documentation

UdfClangDriver::UdfClangDriver ( )

Definition at line 149 of file UDFCompiler.cpp.

150  : clang_path(llvm::sys::findProgramByName("clang++").get().c_str())
151  , diag_options(new DiagnosticOptions())
152  , diag_client(new TextDiagnosticPrinter(llvm::errs(), diag_options.get()))
153  , diag_id(new clang::DiagnosticIDs())
155  , diag_client_owner(diags.takeClient())
156  , the_driver(clang_path.c_str(), llvm::sys::getDefaultTargetTriple(), diags) {}
std::string clang_path
Definition: UDFCompiler.h:42
llvm::IntrusiveRefCntPtr< clang::DiagnosticIDs > diag_id
Definition: UDFCompiler.h:45
std::unique_ptr< clang::DiagnosticConsumer > diag_client_owner
Definition: UDFCompiler.h:47
clang::driver::Driver the_driver
Definition: UDFCompiler.h:48
clang::DiagnosticsEngine diags
Definition: UDFCompiler.h:46
llvm::IntrusiveRefCntPtr< clang::DiagnosticOptions > diag_options
Definition: UDFCompiler.h:43
clang::DiagnosticConsumer * diag_client
Definition: UDFCompiler.h:44

Member Function Documentation

clang::driver::Driver* UdfClangDriver::getClangDriver ( )
inline

Definition at line 39 of file UDFCompiler.h.

References the_driver.

Referenced by UdfCompiler::compileFromCommandLine(), and UdfCompiler::parseToAst().

39 { return &the_driver; }
clang::driver::Driver the_driver
Definition: UDFCompiler.h:48

+ Here is the caller graph for this function:

std::string UdfClangDriver::getClangPath ( )
inline

Definition at line 38 of file UDFCompiler.h.

References clang_path.

38 { return clang_path; }
std::string clang_path
Definition: UDFCompiler.h:42

Member Data Documentation

std::string UdfClangDriver::clang_path
private

Definition at line 42 of file UDFCompiler.h.

Referenced by getClangPath().

clang::DiagnosticConsumer* UdfClangDriver::diag_client
private

Definition at line 44 of file UDFCompiler.h.

std::unique_ptr<clang::DiagnosticConsumer> UdfClangDriver::diag_client_owner
private

Definition at line 47 of file UDFCompiler.h.

llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs> UdfClangDriver::diag_id
private

Definition at line 45 of file UDFCompiler.h.

llvm::IntrusiveRefCntPtr<clang::DiagnosticOptions> UdfClangDriver::diag_options
private

Definition at line 43 of file UDFCompiler.h.

clang::DiagnosticsEngine UdfClangDriver::diags
private

Definition at line 46 of file UDFCompiler.h.

clang::driver::Driver UdfClangDriver::the_driver
private

Definition at line 48 of file UDFCompiler.h.

Referenced by getClangDriver().


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