Skip to content
Snippets Groups Projects
formatters.cpp 1.28 KiB
Newer Older
#include <libwccl/ops/formatters.h>

namespace Wccl {

// ------ UnaryFunctionFormatter -----

std::string UnaryFunctionFormatter::to_raw_string(
	const FunctionBase& f,
	const std::string& arg_str,
	const char* open_bracket,
	const char* close_bracket)
{
	ss << f.raw_operator_name() << open_bracket << arg_str << close_bracket;
}

std::string UnaryFunctionFormatter::to_string(
	const Corpus2::Tagset& tagset,
	const FunctionBase& f,
	const std::string& arg_str,
	const char* open_bracket,
	const char* close_bracket)
{
	ss << f.operator_name(tagset) << open_bracket << arg_str << close_bracket;
}

// ----- BinaryFunctionFormatter ------

std::string BinaryFunctionFormatter::to_string(
	const Corpus2::Tagset& tagset,
	const FunctionBase& f,
	const std::string& arg1_str,
	const std::string& arg2_str)
	ss << f.operator_name(tagset) << "(" << arg1_str << ", " << arg2_str << ")";
}

std::string BinaryFunctionFormatter::to_raw_string(
	const FunctionBase& f,
	const std::string& arg1_str,
	const std::string& arg2_str)
	ss << f.raw_operator_name() << "(" << arg1_str << ", " << arg2_str << ")";