Commits

William Pitcock  committed 0b187d1

Remainder of irc_string.* is moved to new inline/stringops.h.

  • Participants
  • Parent commits aae7446

Comments (0)

Files changed (7)

File include/inline/stringops.h

+/*
+ *  charybdis: an advanced ircd.
+ *  inline/stringops.h: inlined string operations used in a few places
+ *
+ *  Copyright (c) 2005-2008 charybdis development team
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
+ *  USA
+ */
+
+#ifndef __INLINE_STRINGOPS_H
+#define __INLINE_STRINGOPS_H
+
+/*
+ * strip_colour - remove colour codes from a string
+ * -asuffield (?)
+ */
+static inline char *
+strip_colour(char *string)
+{
+	char *c = string;
+	char *c2 = string;
+	char *last_non_space = NULL;
+
+	/* c is source, c2 is target */
+	for(; c && *c; c++)
+		switch (*c)
+		{
+		case 3:
+			if(isdigit(c[1]))
+			{
+				c++;
+				if(isdigit(c[1]))
+					c++;
+				if(c[1] == ',' && isdigit(c[2]))
+				{
+					c += 2;
+					if(isdigit(c[1]))
+						c++;
+				}
+			}
+			break;
+		case 2:
+		case 6:
+		case 7:
+		case 22:
+		case 23:
+		case 27:
+		case 31:
+			break;
+		case 32:
+			*c2++ = *c;
+			break;
+		default:
+			*c2++ = *c;
+			last_non_space = c2;
+			break;
+		}
+
+	*c2 = '\0';
+
+	if(last_non_space)
+		*last_non_space = '\0';
+
+	return string;
+}
+
+#endif

File include/irc_string.h

-/*
- *  ircd-ratbox: A slightly useful ircd.
- *  irc_string.h: A header for the ircd string functions.
- *
- *  Copyright (C) 1990 Jarkko Oikarinen and University of Oulu, Co Center
- *  Copyright (C) 1996-2002 Hybrid Development Team
- *  Copyright (C) 2002-2004 ircd-ratbox development team
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 2 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
- *  USA
- *
- *  $Id: irc_string.h 3538 2007-07-26 14:21:57Z jilles $
- */
-
-#ifndef INCLUDED_irc_string_h
-#define INCLUDED_irc_string_h
-
-/*
- * strip_colour - remove colour codes from a string
- * -asuffield (?)
- */
-char *strip_colour(char *string);
-
-#endif /* INCLUDED_irc_string_h */

File modules/core/m_message.c

 #include "send.h"
 #include "s_newconf.h"
 #include "s_stats.h"
-#include "irc_string.h"
+#include "inline/stringops.h"
 
 static int m_message(int, const char *, struct Client *, struct Client *, int, const char **);
 static int m_privmsg(struct Client *, struct Client *, int, const char **);

File modules/core/m_part.c

 #include "modules.h"
 #include "s_conf.h"
 #include "packet.h"
-#include "irc_string.h"
+#include "inline/stringops.h"
 
 static int m_part(struct Client *, struct Client *, int, const char **);
 

File modules/core/m_quit.c

 #include "parse.h"
 #include "modules.h"
 #include "s_conf.h"
-#include "irc_string.h"
+#include "inline/stringops.h"
 
 static int m_quit(struct Client *, struct Client *, int, const char **);
 static int ms_quit(struct Client *, struct Client *, int, const char **);

File src/Makefile.in

   hash.c                        \
   hook.c                        \
   hostmask.c			\
-  irc_string.c                  \
   irc_dictionary.c		\
   ircd.c                        \
   ircd_signal.c                 \

File src/irc_string.c

-/*
- *  ircd-ratbox: A slightly useful ircd.
- *  irc_string.c: IRC string functions.
- *
- *  Copyright (C) 1990 Jarkko Oikarinen and University of Oulu, Co Center
- *  Copyright (C) 1996-2002 Hybrid Development Team
- *  Copyright (C) 2002-2005 ircd-ratbox development team
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 2 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
- *  USA
- *
- *  $Id: irc_string.c 678 2006-02-03 20:25:01Z jilles $
- */
-
-#include "irc_string.h"
-
-char *
-strip_colour(char *string)
-{
-	char *c = string;
-	char *c2 = string;
-	char *last_non_space = NULL;
-	/* c is source, c2 is target */
-	for(; c && *c; c++)
-		switch (*c)
-		{
-		case 3:
-			if(isdigit(c[1]))
-			{
-				c++;
-				if(isdigit(c[1]))
-					c++;
-				if(c[1] == ',' && isdigit(c[2]))
-				{
-					c += 2;
-					if(isdigit(c[1]))
-						c++;
-				}
-			}
-			break;
-		case 2:
-		case 6:
-		case 7:
-		case 22:
-		case 23:
-		case 27:
-		case 31:
-			break;
-		case 32:
-			*c2++ = *c;
-			break;
-		default:
-			*c2++ = *c;
-			last_non_space = c2;
-			break;
-		}
-	*c2 = '\0';
-	if(last_non_space)
-		*last_non_space = '\0';
-	return string;
-}