summaryrefslogtreecommitdiff
path: root/src/tool
diff options
context:
space:
mode:
Diffstat (limited to 'src/tool')
-rw-r--r--src/tool/dir.cpp18
-rw-r--r--src/tool/dir.h8
-rw-r--r--src/tool/tool.cpp161
-rw-r--r--src/tool/tool.h86
4 files changed, 113 insertions, 160 deletions
diff --git a/src/tool/dir.cpp b/src/tool/dir.cpp
index ae48d5f..392112a 100644
--- a/src/tool/dir.cpp
+++ b/src/tool/dir.cpp
@@ -12,7 +12,7 @@ dir::dir()
dir::~dir()
{
- vec_dir.clear();
+ dir_vec.clear();
close_dir();
}
@@ -29,9 +29,9 @@ dir::open_dir( string &s_dir )
if ( b_open )
return false;
- p_d = opendir( s_dir.c_str() );
+ dp = opendir( s_dir.c_str() );
- if ( p_d == NULL )
+ if ( dp == NULL )
return false; // Could not open dir.
b_open = true;
@@ -42,9 +42,9 @@ dir::open_dir( string &s_dir )
void
dir::close_dir()
{
- if ( b_open && p_d != NULL )
+ if ( b_open && dp != NULL )
{
- closedir( p_d );
+ closedir( dp );
b_open = false;
}
}
@@ -52,15 +52,15 @@ dir::close_dir()
void
dir::read_dir()
{
- if ( p_d != NULL )
- while( p_ep = readdir( p_d ) )
- vec_dir.push_back( string( p_ep->d_name ) );
+ if ( dp != NULL )
+ while( ep = readdir( dp ) )
+ dir_vec.push_back( string( ep->d_name ) );
}
vector<string>
dir::get_dir_vec()
{
- return vec_dir;
+ return dir_vec;
}
#endif
diff --git a/src/tool/dir.h b/src/tool/dir.h
index 22ec510..cff265f 100644
--- a/src/tool/dir.h
+++ b/src/tool/dir.h
@@ -6,9 +6,7 @@
#include <stdio.h>
#include <sys/types.h>
#include <dirent.h>
-
#include <vector>
-
#include "../incl.h"
using namespace std;
@@ -17,9 +15,9 @@ class dir
{
private:
bool b_open;
- DIR *p_d;
- struct dirent *p_ep;
- vector<string> vec_dir;
+ DIR *dp;
+ struct dirent *ep;
+ vector<string> dir_vec;
public:
dir();
diff --git a/src/tool/tool.cpp b/src/tool/tool.cpp
index dec9bdb..1da4a12 100644
--- a/src/tool/tool.cpp
+++ b/src/tool/tool.cpp
@@ -11,135 +11,30 @@
#include "tool.h"
-bool
-tool::is_alpha_numeric( string &s_digit )
-{
- const char *p_digit = s_digit.c_str();
- int i_len = strlen( p_digit );
-
- for( int i=0; i<i_len; i++ )
- {
- if ( ! isalnum( *p_digit ) )
- return false;
- p_digit++;
- }
-
- return true;
-}
-
-string
-tool::int2string( int i_int )
-{
- char buf[64];
- sprintf(buf, "%d", i_int);
- return buf;
-}
-
-long
-tool::unixtime()
-{
- time_t clock;
- return (long) time( &clock );
-}
-
-int
-tool::string2int( string s_digit )
-{
- const char *p_digit = s_digit.c_str();
- int i_res = 0;
-
- // Convert each digit char and add into result.
- while (*p_digit >= '0' && *p_digit <='9')
- {
- i_res = (i_res * 10) + (*p_digit - '0');
- p_digit++;
- }
-
- // Check that there were no non-digits at end.
- if (*p_digit != 0)
- {
- return -1;
- }
-
- return i_res;
-}
-
-string
-tool::to_lower( string s_str )
-{
- string s_tmp("");
-
- for( int i = 0; i < s_str.size() ;i++ )
- s_tmp = s_tmp + (char) tolower( s_str.at(i) );
-
- return s_tmp;
-}
-
-void
-tool::strip_html( string *p_str)
-{
- int i_pos;
-
- if( (i_pos=p_str->find("<", 0)) == string::npos )
- return;
-
- while(true)
- {
- p_str->replace(i_pos, 1, "&lt;");
-
- if( (i_pos = p_str->find("<", 0)) == string::npos )
- return;
- }
-}
-
-string
-tool::ychat_version()
-{
- return "yChat " + string(VERSION)
- + "-" + string(BRANCH)
- + " Build " + int2string(BUILDNR);
-}
-
-list<string>
-tool::split_string(string s_string, string s_split) {
- list<string> list_ret;
- unsigned i_pos, i_len = s_split.length();
-
- while ( (i_pos = s_string.find(s_split)) != string::npos )
- {
- list_ret.push_back( s_string.substr(0, i_pos) );
- s_string = s_string.substr( i_pos + i_len );
- }
-
- list_ret.push_back( s_string );
-
- return list_ret;
-}
-
string
tool::trim( string s_str )
{
- if( s_str.empty() )
- return s_str;
+ if(s_str.empty())
+ return "";
char c_cur = s_str[0];
- int i_pos = 0;
+ auto int pos=0;
// left trim
- while ( c_cur == ' '|| c_cur == '\n' || c_cur == '\r' )
+ while (c_cur==' '|| c_cur == '\n' || c_cur == '\r')
{
- s_str.erase(i_pos,1);
- c_cur = s_str[++i_pos];
+ s_str.erase(pos,1);
+ c_cur = s_str[++pos];
}
// right trim
- i_pos = s_str.size();
+ pos=s_str.size();
c_cur = s_str[s_str.size()];
- while ( c_cur == ' ' || c_cur == '\n' || c_cur == '\0' || c_cur == '\r' )
+ while (c_cur==' ' || c_cur == '\n' || c_cur == '\0' || c_cur == '\r')
{
- s_str.erase(i_pos, 1);
- c_cur = s_str[--i_pos];
+ s_str.erase(pos,1);
+ c_cur = s_str[--pos];
}
return s_str;
@@ -149,16 +44,16 @@ char*
tool::clean_char( char* c_str )
{
// Ralf:
- for ( char* c_pos = c_str; *c_pos != '\0'; ++c_pos )
+ char *c_pos;
+ for (c_pos = c_str; *c_pos != '\0'; ++c_pos)
if ( iscntrl(*c_pos) ) *c_pos = ' ';
-
return c_str;
}
string
tool::replace( string s_string, string s_search, string s_replace )
{
- unsigned i_pos[2];
+ unsigned int i_pos[2];
for ( i_pos[0] = s_string.find( s_search );
i_pos[0] != string::npos;
@@ -174,34 +69,32 @@ tool::replace( string s_string, string s_search, string s_replace )
string
tool::get_extension( string s_file )
{
- int i_pos = s_file.find_last_of(".");
-
- if( i_pos != string::npos )
+ int pos = s_file.find_last_of(".");
+ if(pos != string::npos)
{
- string s_ext = s_file.substr(i_pos+1, s_file.size()-i_pos-1 );
- for( int i = 0; i < s_ext.size(); ++i )
- s_ext[i] = tolower(s_ext[i]);
+ string s_ext=s_file.substr(pos+1, s_file.size()-(pos+1));
+ for(int i = 0;i<s_ext.size();i++)
+ s_ext[i]=tolower(s_ext[i]);
return to_lower(s_ext);
}
-
return "";
}
char*
tool::int2char( int i_int )
{
- char *buf = new char[64];
- sprintf(buf, "%d", i_int);
- return buf;
+ char *buffer = new char[64];
+ sprintf(buffer, "%d", i_int);
+ return buffer;
}
string
tool::shell_command( string s_command, method m_method )
{
FILE *file;
- char buf[READBUF];
- char *c_pos;
+ char buffer[READBUF];
+ char* c_pos;
string s_ret = "";
wrap::system_message(SHELLEX);
@@ -216,18 +109,16 @@ tool::shell_command( string s_command, method m_method )
{
while(true)
{
- if(fgets(buf, READBUF, file) == NULL)
+ if(fgets(buffer, READBUF, file) == NULL)
break;
-
switch (m_method) {
case METH_NCURSES:
- wrap::system_message( clean_char(buf) );
+ wrap::system_message( clean_char(buffer) );
break;
default:
- s_ret.append("\n" + string(buf));
+ s_ret.append("\n" + string(buffer));
} // switch
}
-
pclose(file);
}
diff --git a/src/tool/tool.h b/src/tool/tool.h
index b296514..b381181 100644
--- a/src/tool/tool.h
+++ b/src/tool/tool.h
@@ -3,27 +3,91 @@
#include "../incl.h"
-#include <list>
-
using namespace std;
class tool
{
public:
- static list<string> split_string(string s_string, string s_split);
- static bool is_alpha_numeric( string &s_digit );
+ static bool is_alpha_numeric( string &s_digit )
+ {
+ auto const char *digit = s_digit.c_str();
+ auto int i_len = strlen( digit );
+
+
+ for( int i=0; i<i_len; i++ )
+ {
+ if ( ! isalnum( *digit ) )
+ return false;
+ digit++;
+ }
+ return true;
+ }
+
static char* int2char( int i_int );
static char* clean_char( char* c_str);
static string trim( string s_str );
static string replace( string s_string, string s_search, string s_replace );
- static string int2string( int i_int );
- static long unixtime();
- static int string2int( string s_digit );
+ static string int2string( int i_int )
+ {
+ char buffer[64];
+ sprintf(buffer, "%d", i_int);
+ return string(buffer);
+ }
+
+ static long unixtime()
+ {
+ time_t clock;
+ return (long) time( &clock );
+ }
+
+ static int string2int( string s_digit )
+ {
+ auto const char *digit = s_digit.c_str();
+ int result = 0;
+
+ // Convert each digit char and add into result.
+ while (*digit >= '0' && *digit <='9')
+ {
+ result = (result * 10) + (*digit - '0');
+ digit++;
+ }
+
+ // Check that there were no non-digits at end.
+ if (*digit != 0)
+ {
+ return -1;
+ }
+
+ return result;
+ }
+ static void strip_html( string *s_str)
+ {
+ auto int i_pos;
+ if((i_pos=s_str->find("<",0))==string::npos)
+ return;
+ while(true)
+ {
+ s_str->replace(i_pos,1,"&lt;");
+ if((i_pos=s_str->find("<",0))==string::npos)
+ return;
+ }
+ }
+
static string get_extension( string s_file );
- static string to_lower( string s_str );
- static void strip_html( string *p_str );
- static string shell_command( string s_command, method m_method );
- static string ychat_version();
+ static string to_lower( string s )
+ {
+ string s_tmp("");
+ for(int i=0;i < s.size() ;i++)
+ s_tmp=s_tmp+(char)tolower(s.at(i));
+ return s_tmp;
+ }
+
+ static string shell_command( string s_command, method m_method );
+
+ static string ychat_version()
+ {
+ return string(VERSION) + "-" + string(BRANCH) + " Build " + int2string(BUILDNR);
+ }
};
#endif