Rcpp Version 1.0.9
Rcpp::attributes::ExportsGenerator Class Referenceabstract
Inheritance diagram for Rcpp::attributes::ExportsGenerator:

Public Member Functions

virtual ~ExportsGenerator ()
 
const std::string & targetFile () const
 
const std::string & package () const
 
const std::string & packageCpp () const
 
const std::string packageCppPrefix () const
 
virtual void writeBegin ()=0
 
void writeFunctions (const SourceFileAttributes &attributes, bool verbose)
 
virtual void writeEnd (bool hasPackageInit)=0
 
virtual bool commit (const std::vector< std::string > &includes)=0
 
bool remove ()
 
 operator std::ostream & ()
 

Protected Member Functions

 ExportsGenerator (const std::string &targetFile, const std::string &package, const std::string &commentPrefix)
 
std::ostream & ostr ()
 
bool hasCppInterface () const
 
std::string exportValidationFunction ()
 
std::string exportValidationFunctionRegisteredName ()
 
std::string registerCCallableExportedName ()
 
bool commit (const std::string &preamble=std::string())
 
std::string dotNameHelper (const std::string &name) const
 

Private Member Functions

 ExportsGenerator (const ExportsGenerator &)
 
ExportsGeneratoroperator= (const ExportsGenerator &)
 
virtual void doWriteFunctions (const SourceFileAttributes &attributes, bool verbose)=0
 
bool isSafeToOverwrite () const
 
std::string generatorToken () const
 

Private Attributes

std::string targetFile_
 
std::string package_
 
std::string packageCpp_
 
std::string commentPrefix_
 
std::string existingCode_
 
std::ostringstream codeStream_
 
bool hasCppInterface_
 

Detailed Description

Definition at line 599 of file attributes.cpp.

Constructor & Destructor Documentation

◆ ExportsGenerator() [1/2]

Rcpp::attributes::ExportsGenerator::ExportsGenerator ( const std::string &  targetFile,
const std::string &  package,
const std::string &  commentPrefix 
)
protected

Definition at line 1866 of file attributes.cpp.

References existingCode_, Rcpp::exists(), isSafeToOverwrite(), packageCpp_, and targetFile_.

Here is the call graph for this function:

◆ ExportsGenerator() [2/2]

Rcpp::attributes::ExportsGenerator::ExportsGenerator ( const ExportsGenerator )
private

◆ ~ExportsGenerator()

virtual Rcpp::attributes::ExportsGenerator::~ExportsGenerator ( )
inlinevirtual

Definition at line 611 of file attributes.cpp.

Member Function Documentation

◆ commit() [1/2]

bool Rcpp::attributes::ExportsGenerator::commit ( const std::string &  preamble = std::string())
protected

Definition at line 1905 of file attributes.cpp.

References codeStream_, commentPrefix_, existingCode_, Rcpp::exists(), generatorToken(), and targetFile_.

Here is the call graph for this function:

◆ commit() [2/2]

◆ dotNameHelper()

std::string Rcpp::attributes::ExportsGenerator::dotNameHelper ( const std::string &  name) const
protected

Definition at line 1950 of file attributes.cpp.

◆ doWriteFunctions()

virtual void Rcpp::attributes::ExportsGenerator::doWriteFunctions ( const SourceFileAttributes attributes,
bool  verbose 
)
privatepure virtual

◆ exportValidationFunction()

std::string Rcpp::attributes::ExportsGenerator::exportValidationFunction ( )
inlineprotected

◆ exportValidationFunctionRegisteredName()

std::string Rcpp::attributes::ExportsGenerator::exportValidationFunctionRegisteredName ( )
inlineprotected

Definition at line 650 of file attributes.cpp.

References exportValidationFunction(), and packageCppPrefix().

Referenced by Rcpp::attributes::CppExportsIncludeGenerator::writeBegin(), and Rcpp::attributes::CppExportsGenerator::writeEnd().

Here is the call graph for this function:

◆ generatorToken()

std::string Rcpp::attributes::ExportsGenerator::generatorToken ( ) const
inlineprivate

Definition at line 681 of file attributes.cpp.

Referenced by commit(), and isSafeToOverwrite().

◆ hasCppInterface()

◆ isSafeToOverwrite()

bool Rcpp::attributes::ExportsGenerator::isSafeToOverwrite ( ) const
inlineprivate

Definition at line 674 of file attributes.cpp.

References existingCode_, and generatorToken().

Referenced by ExportsGenerator().

Here is the call graph for this function:

◆ operator std::ostream &()

Rcpp::attributes::ExportsGenerator::operator std::ostream & ( )
inline

Definition at line 631 of file attributes.cpp.

References codeStream_.

◆ operator=()

ExportsGenerator& Rcpp::attributes::ExportsGenerator::operator= ( const ExportsGenerator )
private

◆ ostr()

◆ package()

◆ packageCpp()

◆ packageCppPrefix()

◆ registerCCallableExportedName()

std::string Rcpp::attributes::ExportsGenerator::registerCCallableExportedName ( )
inlineprotected

Definition at line 653 of file attributes.cpp.

References packageCppPrefix().

Referenced by Rcpp::attributes::CppExportsGenerator::writeEnd(), and Rcpp::attributes::RExportsGenerator::writeEnd().

Here is the call graph for this function:

◆ remove()

bool Rcpp::attributes::ExportsGenerator::remove ( )

Definition at line 1945 of file attributes.cpp.

References Rcpp::attributes::removeFile(), and targetFile_.

Referenced by Rcpp::attributes::CppExportsIncludeGenerator::commit(), and Rcpp::attributes::CppPackageIncludeGenerator::commit().

Here is the call graph for this function:

◆ targetFile()

const std::string& Rcpp::attributes::ExportsGenerator::targetFile ( ) const
inline

Definition at line 614 of file attributes.cpp.

References targetFile_.

Referenced by Rcpp::attributes::CppExportsGenerator::writeEnd().

◆ writeBegin()

◆ writeEnd()

virtual void Rcpp::attributes::ExportsGenerator::writeEnd ( bool  hasPackageInit)
pure virtual

◆ writeFunctions()

void Rcpp::attributes::ExportsGenerator::writeFunctions ( const SourceFileAttributes attributes,
bool  verbose 
)

Definition at line 1892 of file attributes.cpp.

References doWriteFunctions(), hasCppInterface_, Rcpp::attributes::SourceFileAttributes::hasInterface(), and Rcpp::attributes::kInterfaceCpp.

Here is the call graph for this function:

Member Data Documentation

◆ codeStream_

std::ostringstream Rcpp::attributes::ExportsGenerator::codeStream_
private

Definition at line 691 of file attributes.cpp.

Referenced by commit(), operator std::ostream &(), and ostr().

◆ commentPrefix_

std::string Rcpp::attributes::ExportsGenerator::commentPrefix_
private

Definition at line 689 of file attributes.cpp.

Referenced by commit().

◆ existingCode_

std::string Rcpp::attributes::ExportsGenerator::existingCode_
private

Definition at line 690 of file attributes.cpp.

Referenced by commit(), ExportsGenerator(), and isSafeToOverwrite().

◆ hasCppInterface_

bool Rcpp::attributes::ExportsGenerator::hasCppInterface_
private

Definition at line 692 of file attributes.cpp.

Referenced by hasCppInterface(), and writeFunctions().

◆ package_

std::string Rcpp::attributes::ExportsGenerator::package_
private

Definition at line 687 of file attributes.cpp.

Referenced by package().

◆ packageCpp_

std::string Rcpp::attributes::ExportsGenerator::packageCpp_
private

Definition at line 688 of file attributes.cpp.

Referenced by ExportsGenerator(), and packageCpp().

◆ targetFile_

std::string Rcpp::attributes::ExportsGenerator::targetFile_
private

Definition at line 686 of file attributes.cpp.

Referenced by commit(), ExportsGenerator(), remove(), and targetFile().


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