#!/usr/bin/perl
-# +------------------------------------+
-# | Inspire Internet Relay Chat Daemon |
-# +------------------------------------+
#
-# InspIRCd: (C) 2002-2007 InspIRCd Development Team
-# See: http://www.inspircd.org/wiki/index.php/Credits
+# InspIRCd -- Internet Relay Chat Daemon
#
-# This program is free but copyrighted software; see
-# the file COPYING for details.
+# Copyright (C) 2007 Craig Edwards <craigedwards@brainbox.cc>
#
-# ---------------------------------------------------
+# This file is part of InspIRCd. InspIRCd 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, version 2.
+#
+# 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, see <http://www.gnu.org/licenses/>.
+#
+
use strict;
use warnings;
# And now the caller family
-print "template <typename HandlerType> class CoreExport caller\n";
+print "template <typename HandlerType> class caller\n";
print "{\n";
print " public:\n";
print " HandlerType* target;\n\n";
my @templatetypepairs = map { $_ . " " . lc($_) } @templatetypes;
my @lctemplatetypes = map(lc, @templatetypes);
- print "template <typename " . join(', typename ', @templatetypes) . "> class CoreExport caller" . $i . " : public caller< " . $handlertype . " >\n";
+ print "template <typename " . join(', typename ', @templatetypes) . "> class caller" . $i . " : public caller< " . $handlertype . " >\n";
print "{\n";
print " public:\n";
print " caller" . $i . "(" . $handlertype . "* initial)\n";
print " : caller< " . $handlertype. " >::caller(initial)\n";
print " { }\n\n";
- print " virtual ReturnType operator() (" . join(', ', @templatetypepairs[1..$#templatetypepairs]) . ")\n";
+ print " ReturnType operator() (" . join(', ', @templatetypepairs[1..$#templatetypepairs]) . ")\n";
print " {\n";
print " return this->target->Call(" . join(', ', @lctemplatetypes[1..$#lctemplatetypes]) . ");\n";
print " }\n";