1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
|
#############################################################################
##
#W boolean.g GAP library Thomas Breuer
#W & Frank Celler
##
#H @(#)$Id: boolean.g,v 4.6 2002/04/15 10:04:29 sal Exp $
##
#Y Copyright (C) 1997, Lehrstuhl D fuer Mathematik, RWTH Aachen, Germany
#Y (C) 1998 School Math and Comp. Sci., University of St. Andrews, Scotland
#Y Copyright (C) 2002 The GAP Group
##
## This file deals with booleans.
##
Revision.boolean_g :=
"@(#)$Id: boolean.g,v 4.6 2002/04/15 10:04:29 sal Exp $";
#############################################################################
##
#C IsBool(<obj>) . . . . . . . . . . . . . . . . . . . category of booleans
##
## tests whether <obj> is `true', `false' or `fail'.
DeclareCategoryKernel( "IsBool", IsObject, IS_BOOL );
#############################################################################
##
#V BooleanFamily . . . . . . . . . . . . . . . . . . . . family of booleans
##
BIND_GLOBAL( "BooleanFamily",
NewFamily( "BooleanFamily", IS_BOOL ) );
#############################################################################
##
#F TYPE_BOOL . . . . . . . . . . . . . . . . . . . type of internal booleans
##
BIND_GLOBAL( "TYPE_BOOL",
NewType( BooleanFamily, IS_BOOL and IsInternalRep ) );
#############################################################################
##
#m String( <bool> ) . . . . . . . . . . . . . . . . . . . . . for a boolean
##
InstallMethod( String,
"for a boolean",
true,
[ IsBool ], 0,
function( bool )
if bool = true then
return "true";
elif bool = false then
return "false";
elif bool = fail then
return "fail";
else
Error( "unknown boolean <bool>" );
fi;
end );
#############################################################################
##
#E
##
|