#include <Translation.h>
Definition at line 26 of file Translation.h.
Public Member Functions | |
| StringBuffer () | |
| StringBuffer (const StringBuffer &s) | |
| StringBuffer (const std::string &_first) | |
| StringBuffer (const unsigned n) | |
| ~StringBuffer () | |
| StringBuffer & | operator= (const StringBuffer &b) |
| StringBuffer & | operator<< (const StringBuffer &s) |
| StringBuffer & | operator<< (const std::string &s) |
| void | endl () |
| void | replace (const std::string &what, const std::string &with) |
| void | insert_begin (const StringBuffer &s) |
| void | format () |
| void | write (const std::string &_fname) |
Private Attributes | |
| std::string | buffer |
Friends | |
| std::ostream & | operator<< (std::ostream &stream, const StringBuffer &) |
| StringBuffer::StringBuffer | ( | ) | [inline] |
| StringBuffer::StringBuffer | ( | const StringBuffer & | s | ) | [inline] |
| StringBuffer::StringBuffer | ( | const std::string & | _first | ) | [inline] |
| StringBuffer::StringBuffer | ( | const unsigned | n | ) | [inline] |
Definition at line 33 of file Translation.h.
References buffer.
00033 { buffer += (to_string<unsigned>(n)); }
| StringBuffer::~StringBuffer | ( | ) | [inline] |
| StringBuffer& StringBuffer::operator= | ( | const StringBuffer & | b | ) | [inline] |
| StringBuffer& StringBuffer::operator<< | ( | const StringBuffer & | s | ) | [inline] |
| StringBuffer& StringBuffer::operator<< | ( | const std::string & | s | ) | [inline] |
Definition at line 45 of file Translation.h.
References buffer.
00045 { 00046 buffer += (s); 00047 return *this; 00048 }
| void StringBuffer::endl | ( | ) | [inline] |
| void StringBuffer::replace | ( | const std::string & | what, | |
| const std::string & | with | |||
| ) | [inline] |
Definition at line 50 of file Translation.h.
References buffer, and utils::replace().
00050 { 00051 utils::replace(buffer, what, with); 00052 }

| void StringBuffer::insert_begin | ( | const StringBuffer & | s | ) | [inline] |
Definition at line 53 of file Translation.h.
References buffer.
Referenced by Ast2Cpp::operator()().

| void StringBuffer::format | ( | ) |
Definition at line 73 of file Translation.cpp.
References buffer, and indent().
Referenced by Ast2Php::operator()(), and Ast2Cpp::operator()().
00073 { 00074 string out=""; 00075 string temp=""; 00076 unsigned nind = 0; 00077 for (std::string::const_iterator iter=buffer.begin();iter!=buffer.end();++iter) 00078 { 00079 const char c = *iter; 00080 if (c == '\n') { 00081 continue; 00082 } 00083 else if (c == '{' || c == '}') { 00084 temp += c; 00085 if (c == '}') nind--; 00086 out += (indent(nind) + temp + "\n"); 00087 if (c == '{') nind++; 00088 temp = ""; 00089 } 00090 else { 00091 temp += c; 00092 if (c == ';') { 00093 out += (indent(nind) + temp + "\n"); 00094 temp = ""; 00095 } 00096 } 00097 } 00098 buffer = out; 00099 00100 }


| void StringBuffer::write | ( | const std::string & | _fname | ) |
Definition at line 103 of file Translation.cpp.
References buffer.
Referenced by main().
00103 { 00104 ofstream out(fname.c_str()); 00105 out << buffer; 00106 out.close(); 00107 }

| std::ostream& operator<< | ( | std::ostream & | stream, | |
| const StringBuffer & | ||||
| ) | [friend] |
Definition at line 110 of file Translation.cpp.
00110 { 00111 stream << b.buffer << std::endl; 00112 return stream; 00113 }
std::string StringBuffer::buffer [private] |
Definition at line 28 of file Translation.h.
Referenced by endl(), format(), insert_begin(), operator<<(), operator<<(), operator=(), replace(), StringBuffer(), and write().
1.5.3