1 /* 2 * Copyright (c) 2001 by The XFree86 Project, Inc. 3 * 4 * Permission is hereby granted, free of charge, to any person obtaining a 5 * copy of this software and associated documentation files (the "Software"), 6 * to deal in the Software without restriction, including without limitation 7 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 * and/or sell copies of the Software, and to permit persons to whom the 9 * Software is furnished to do so, subject to the following conditions: 10 * 11 * The above copyright notice and this permission notice shall be included in 12 * all copies or substantial portions of the Software. 13 * 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 17 * THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF 19 * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 * SOFTWARE. 21 * 22 * Except as contained in this notice, the name of the XFree86 Project shall 23 * not be used in advertising or otherwise to promote the sale, use or other 24 * dealings in this Software without prior written authorization from the 25 * XFree86 Project. 26 * 27 * Author: Paulo César Pereira de Andrade 28 */ 29 30 /* $XFree86: xc/programs/xedit/lisp/math.h,v 1.6tsi Exp $ */ 31 32 #ifndef Lisp_math_h 33 #define Lisp_math_h 34 35 #include "lisp/internal.h" 36 #include "mp.h" 37 38 void LispMathInit(void); 39 LispObj *LispFloatCoerce(LispBuiltin*, LispObj*); 40 41 LispObj *Lisp_Mul(LispBuiltin*); 42 LispObj *Lisp_Plus(LispBuiltin*); 43 LispObj *Lisp_Minus(LispBuiltin*); 44 LispObj *Lisp_Div(LispBuiltin*); 45 LispObj *Lisp_OnePlus(LispBuiltin*); 46 LispObj *Lisp_OneMinus(LispBuiltin*); 47 LispObj *Lisp_Less(LispBuiltin*); 48 LispObj *Lisp_LessEqual(LispBuiltin*); 49 LispObj *Lisp_Equal_(LispBuiltin*); 50 LispObj *Lisp_Greater(LispBuiltin*); 51 LispObj *Lisp_GreaterEqual(LispBuiltin*); 52 LispObj *Lisp_NotEqual(LispBuiltin*); 53 LispObj *Lisp_Max(LispBuiltin*); 54 LispObj *Lisp_Min(LispBuiltin*); 55 LispObj *Lisp_Mod(LispBuiltin*); 56 LispObj *Lisp_Abs(LispBuiltin*); 57 LispObj *Lisp_Complex(LispBuiltin*); 58 LispObj *Lisp_Complexp(LispBuiltin*); 59 LispObj *Lisp_Conjugate(LispBuiltin*); 60 LispObj *Lisp_Decf(LispBuiltin*); 61 LispObj *Lisp_Denominator(LispBuiltin*); 62 LispObj *Lisp_Evenp(LispBuiltin*); 63 LispObj *Lisp_Float(LispBuiltin*); 64 LispObj *Lisp_Floatp(LispBuiltin*); 65 LispObj *Lisp_Gcd(LispBuiltin*); 66 LispObj *Lisp_Imagpart(LispBuiltin*); 67 LispObj *Lisp_Incf(LispBuiltin*); 68 LispObj *Lisp_Integerp(LispBuiltin*); 69 LispObj *Lisp_Isqrt(LispBuiltin*); 70 LispObj *Lisp_Lcm(LispBuiltin*); 71 LispObj *Lisp_Logand(LispBuiltin*); 72 LispObj *Lisp_Logeqv(LispBuiltin*); 73 LispObj *Lisp_Logior(LispBuiltin*); 74 LispObj *Lisp_Lognot(LispBuiltin*); 75 LispObj *Lisp_Logxor(LispBuiltin*); 76 LispObj *Lisp_Minusp(LispBuiltin*); 77 LispObj *Lisp_Numberp(LispBuiltin*); 78 LispObj *Lisp_Numerator(LispBuiltin*); 79 LispObj *Lisp_Oddp(LispBuiltin*); 80 LispObj *Lisp_Plusp(LispBuiltin*); 81 LispObj *Lisp_Rational(LispBuiltin*); 82 #if 0 83 LispObj *Lisp_Rationalize(LispBuiltin*); 84 #endif 85 LispObj *Lisp_Rationalp(LispBuiltin*); 86 LispObj *Lisp_Realpart(LispBuiltin*); 87 LispObj *Lisp_Rem(LispBuiltin*); 88 LispObj *Lisp_Sqrt(LispBuiltin*); 89 LispObj *Lisp_Zerop(LispBuiltin*); 90 LispObj *Lisp_Ceiling(LispBuiltin*); 91 LispObj *Lisp_Fceiling(LispBuiltin*); 92 LispObj *Lisp_Floor(LispBuiltin*); 93 LispObj *Lisp_Ffloor(LispBuiltin*); 94 LispObj *Lisp_Round(LispBuiltin*); 95 LispObj *Lisp_Fround(LispBuiltin*); 96 LispObj *Lisp_Truncate(LispBuiltin*); 97 LispObj *Lisp_Ftruncate(LispBuiltin*); 98 99 100 #endif /* Lisp_math_h */ 101