#include <libwccl/ops/formatters.h> namespace Wccl { // ------ UnaryFunctionFormatter ----- std::string UnaryFunctionFormatter::to_raw_string( const FunctionBase& f, const FunctionBase& arg_expr, const char* open_bracket, const char* close_bracket) { std::string s(f.raw_operator_name()); s.append(open_bracket); s.append(arg_expr.to_raw_string()); s.append(close_bracket); return s; } std::string UnaryFunctionFormatter::to_string( const Corpus2::Tagset& tagset, const FunctionBase& f, const FunctionBase& arg_expr, const char* open_bracket, const char* close_bracket) { std::string s(f.operator_name(tagset)); s.append(open_bracket); s.append(arg_expr.to_string(tagset)); s.append(close_bracket); return s; } // ----- BinaryFunctionFormatter ------ std::string BinaryFunctionFormatter::to_string( const Corpus2::Tagset& tagset, const FunctionBase& f, const FunctionBase& arg1_expr, const FunctionBase& arg2_expr) { std::string s(f.operator_name(tagset)); s.append("("); s.append(arg1_expr.to_string(tagset)); s.append(", "); s.append(arg2_expr.to_string(tagset)); s.append(")"); return s; } std::string BinaryFunctionFormatter::to_raw_string( const FunctionBase& f, const FunctionBase& arg1_expr, const FunctionBase& arg2_expr) { std::string s(f.raw_operator_name()); s.append("("); s.append(arg1_expr.to_raw_string()); s.append(", "); s.append(arg2_expr.to_raw_string()); s.append(")"); return s; } } /* end ns Wccl */