* @file
*
* This file implements Java class generation.
*/
#include "AbstractSourceCodeGenerator.h"
namespace Cangjie::Interop {
AbstractSourceCodeGenerator::AbstractSourceCodeGenerator(const std::string& outputFilePath)
: outputFilePath(outputFilePath)
{
}
AbstractSourceCodeGenerator::AbstractSourceCodeGenerator(
const std::string& outputFolderPath, const std::string& outputFileName)
: outputFilePath(FileUtil::JoinPath(outputFolderPath, outputFileName))
{
}
void AbstractSourceCodeGenerator::Generate()
{
ConstructResult();
WriteToOutputFile();
}
bool AbstractSourceCodeGenerator::WriteToOutputFile()
{
return FileUtil::WriteToFile(outputFilePath, res);
}
void AbstractSourceCodeGenerator::AddWithIndent(const std::string& indent, const std::string& s)
{
res += indent;
res += s;
res += "\n";
}
}