Rcpp Version 1.1.2
Loading...
Searching...
No Matches
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 591 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

◆ ExportsGenerator() [2/2]

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

References ExportsGenerator().

Here is the call graph for this function:

◆ ~ExportsGenerator()

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

Definition at line 603 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 1897 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

◆ 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 642 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 673 of file attributes.cpp.

Referenced by commit(), and isSafeToOverwrite().

◆ hasCppInterface()

◆ isSafeToOverwrite()

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

Definition at line 666 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 623 of file attributes.cpp.

References codeStream_.

◆ operator=()

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

References ExportsGenerator().

Here is the call graph for this function:

◆ ostr()

◆ package()

◆ packageCpp()

◆ packageCppPrefix()

◆ registerCCallableExportedName()

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

Definition at line 645 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 1937 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 606 of file attributes.cpp.

References targetFile_.

Referenced by ExportsGenerator(), and 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 1884 of file attributes.cpp.

References doWriteFunctions(), hasCppInterface_, 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 683 of file attributes.cpp.

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

◆ commentPrefix_

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

Definition at line 681 of file attributes.cpp.

Referenced by commit(), and ExportsGenerator().

◆ existingCode_

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

Definition at line 682 of file attributes.cpp.

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

◆ hasCppInterface_

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

Definition at line 684 of file attributes.cpp.

Referenced by ExportsGenerator(), hasCppInterface(), and writeFunctions().

◆ package_

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

Definition at line 679 of file attributes.cpp.

Referenced by ExportsGenerator(), and package().

◆ packageCpp_

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

Definition at line 680 of file attributes.cpp.

Referenced by ExportsGenerator(), and packageCpp().

◆ targetFile_

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

Definition at line 678 of file attributes.cpp.

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


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