
| Current Path : /proc/thread-self/root/usr/include/gap/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : //proc/thread-self/root/usr/include/gap/error.h |
/**************************************************************************** ** *Y Copyright (C) 1996, Lehrstuhl D für Mathematik, RWTH Aachen, Germany *Y (C) 1998 School Math and Comp. Sci., University of St Andrews, Scotland *Y Copyright (C) 2002-2018 The GAP Group ** ** This file declares functions for raising user errors and interacting ** with the break loop. ** */ #ifndef GAP_ERROR_H #define GAP_ERROR_H #include "system.h" /**************************************************************************** ** *F RegisterBreakloopObserver( <func> ) ** ** Register a function which will be called when the break loop is entered ** and left. Function should take a single Int argument which will be 1 when ** break loop is entered, 0 when leaving. ** ** Note that it is also possible to leave the break loop (or any GAP code) ** by longjmping. This should be tracked with RegisterSyLongjmpObserver. */ typedef void (*intfunc)(Int); Int RegisterBreakloopObserver(intfunc func); /**************************************************************************** ** *F OpenErrorOutput() . . . . . . . open the file or stream assigned to the ** ERROR_OUTPUT global variable defined in ** error.g, or "*errout*" otherwise */ extern UInt OpenErrorOutput(); /**************************************************************************** ** *F ErrorQuit( <msg>, <arg1>, <arg2> ) . . . . . . . . . . . print and quit */ extern void ErrorQuit(const Char * msg, Int arg1, Int arg2) NORETURN; /**************************************************************************** ** *F ErrorMayQuit( <msg>, <arg1>, <arg2> ) . print, enter break loop and quit ** no option to return anything. */ extern void ErrorMayQuit(const Char * msg, Int arg1, Int arg2) NORETURN; /**************************************************************************** ** *F ErrorQuitBound( <name> ) . . . . . . . . . . . . . . . unbound variable */ extern void ErrorQuitBound(const Char * name); /**************************************************************************** ** *F ErrorQuitFuncResult() . . . . . . . . . . . . . . . . must return a value */ extern void ErrorQuitFuncResult(void) NORETURN; /**************************************************************************** ** *F ErrorQuitIntSmall( <obj> ) . . . . . . . . . . . . . not a small integer */ extern void ErrorQuitIntSmall(Obj obj) NORETURN; /**************************************************************************** ** *F ErrorQuitIntSmallPos( <obj> ) . . . . . . . not a positive small integer */ extern void ErrorQuitIntSmallPos(Obj obj) NORETURN; /**************************************************************************** ** *F ErrorQuitIntPos( <obj> ) . . . . . . . not a positive integer */ extern void ErrorQuitIntPos(Obj obj) NORETURN; /**************************************************************************** ** *F ErrorQuitBool( <obj> ) . . . . . . . . . . . . . . . . . . not a boolean */ extern void ErrorQuitBool(Obj obj) NORETURN; /**************************************************************************** ** *F ErrorQuitFunc( <obj> ) . . . . . . . . . . . . . . . . . not a function */ extern void ErrorQuitFunc(Obj obj) NORETURN; /**************************************************************************** ** *F ErrorQuitNrArgs( <narg>, <args> ) . . . . . . . wrong number of arguments */ extern void ErrorQuitNrArgs(Int narg, Obj args) NORETURN; /**************************************************************************** ** *F ErrorQuitNrAtLeastArgs( <narg>, <args> ) . . . . . . not enough arguments */ extern void ErrorQuitNrAtLeastArgs(Int narg, Obj args) NORETURN; /**************************************************************************** ** *F ErrorQuitRange3( <first>, <second>, <last> ) . . .divisibility rules */ extern void ErrorQuitRange3(Obj first, Obj second, Obj last) NORETURN; /**************************************************************************** ** *F ErrorReturnObj( <msg>, <arg1>, <arg2>, <msg2> ) . . print and return obj */ extern Obj ErrorReturnObj(const Char * msg, Int arg1, Int arg2, const Char * msg2); /**************************************************************************** ** *F ErrorReturnVoid( <msg>, <arg1>, <arg2>, <msg2> ) . . . print and return */ extern void ErrorReturnVoid(const Char * msg, Int arg1, Int arg2, const Char * msg2); /**************************************************************************** ** *F CheckIsPossList( <desc>, <poss> ) . . . . . . . . . . check for poss list */ void CheckIsPossList(const Char * desc, Obj poss); /**************************************************************************** ** *F CheckIsDenseList( <desc>, <listName>, <list> ) . . . check for dense list */ void CheckIsDenseList(const Char * desc, const Char * listName, Obj list); /**************************************************************************** ** *F CheckSameLength */ void CheckSameLength(const Char * desc, const Char *leftName, const Char *rightName, Obj left, Obj right); /**************************************************************************** ** *F * * * * * * * * * * * * * * initialize module * * * * * * * * * * * * * * */ /**************************************************************************** ** *F InitInfoError() . . . . . . . . . . . . . . . . . table of init functions */ StructInitInfo * InitInfoError(void); #endif // GAP_ERROR_H