#!/usr/bin/perl

# ====================================================================
# The Vovida Software License, Version 1.0 
# 
# Copyright (c) 2000 Vovida Networks, Inc.  All rights reserved.
# 
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in
#    the documentation and/or other materials provided with the
#    distribution.
# 
# 3. The names "VOCAL", "Vovida Open Communication Application Library",
#    and "Vovida Open Communication Application Library (VOCAL)" must
#    not be used to endorse or promote products derived from this
#    software without prior written permission. For written
#    permission, please contact vocal\@vovida.org.
# 
# 4. Products derived from this software may not be called "VOCAL", nor
#    may "VOCAL" appear in their name, without prior written
#    permission of Vovida Networks, Inc.
# 
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
# NON-INFRINGEMENT ARE DISCLAIMED.  IN NO EVENT SHALL VOVIDA
# NETWORKS, INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT DAMAGES
# IN EXCESS OF $1,000, NOR FOR ANY INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
# OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
# DAMAGE.
# 
# ====================================================================
# 
# This software consists of voluntary contributions made by Vovida
# Networks, Inc. and many individuals on behalf of Vovida Networks,
# Inc.  For more information on Vovida Networks, Inc., please see
# <http://www.vovida.org/>.

#  $Id: hack-package,v 1.6 2000/08/12 01:25:09 bogawa Exp $

while(<>) {
    chomp;
    if(/BeginPackage/) {
	print $_, "\n";

    } elsif(/EndPackage/) {
	print $_, "\n";

    } else {
	chomp;
	if(!/^\s*$/) {
	    @a = split(/\|/);
	    
	    # fix parameter 2

	    # kill colons, dashes, etc

	    $a[2] =~ y/\:/ /;
	    $a[2] =~ y/\-/ /;

	    $a[2] =~ s/ ([a-z])/uc($1)/ge;
	    $a[2] =~ s/ ([0-9])/_$1/g;
	    $a[2] =~ s/ //g;
	    
	    print "    ", $a[2];
	    
	    $a[1] =~ s/^\s*//;
	    $a[1] =~ s/\s*$//;
	    
	    print "\t\"", $a[1], "\"";

	    print "\t";

	    if($a[1] =~ /\(/) {
		print "string";
	    } else {
		print "void";
	    }
	    
	    print "\t";

	    if($a[3] =~ /x/) {
		print "Yes";
	    } else {
		print "No";
	    }
	    print "\t";


	    if($a[4] =~ /BR/) {
		print "BR";
	    } elsif ($a[4] =~ /TO/) {
		print "TO";
	    } elsif ($a[4] =~ /OO/) {
		print "OO";
	    }
	    
	    print "\n";
	}
    }
    

}
