#############################################################################
##
#W workaround_maps.gi 			 polymaking Package		 Marc Roeder
##
##  

##
#H @(#)$Id: workaround_maps.gi, v 0.8.1 2013/11/16 17:55:19 gap Exp $
##
#Y	 Copyright (C) 2006 Marc Roeder 
#Y 
#Y This program is free software; you can redistribute it and/or 
#Y modify it under the terms of the GNU General Public License 
#Y as published by the Free Software Foundation; either version 2 
#Y of the License, or (at your option) any later version. 
#Y 
#Y This program is distributed in the hope that it will be useful, 
#Y but WITHOUT ANY WARRANTY; without even the implied warranty of 
#Y MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 
#Y GNU General Public License for more details. 
#Y 
#Y You should have received a copy of the GNU General Public License 
#Y along with this program; if not, write to the Free Software 
#Y Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
##
Revision.("workaround_maps_gi"):=
	"@(#)$Id: workaround_maps.gi, v 0.8.1 2013/11/16   17:55:19  gap Exp $";

###########
# This is a workaround for the next-generation polymake
# there we need to call keywords of the form "HASSE_DIAGRAM->FACES"
# and that does not work as an entry of a record. So we have do do
# some extra mapping (yes, it is a hack).
##
# direction of the mapping: GAP keyword mapped to polymake keyword
#######
InstallMethod(MapKeyWordToPolymakeFormat,"for PolymakeObject",[IsString],
        function(option)
	if option   = "FACES" then
	   return     "HASSE_DIAGRAM->FACES";
	elif option = "DIMS"  then 	   
	   return     "HASSE_DIAGRAM->DIMS";
	else
	   return option;	
	fi;
end);

##########
# This is a workaround for the next-generation polymake
# there we need to call keywords of the form "HASSE_DIAGRAM->FACES"
# and that does not work as an entry of a record. So we have do do
# some extra mapping (yes, it is a hack).
##
# direction: Polymake output mapped to GAP keywords
#######

InstallMethod(MapKeyWordFromPolymakeFormat,"for PolymakeObject",[IsString],
        function(option)

	if option   = "HASSE_DIAGRAM->FACES" then
	   return     "FACES";
	elif option = "HASSE_DIAGRAM->DIMS"  then 	   
	   return     "DIMS";
	else
	   return option;
	fi;	   	
end);