Main Page | Class List | File List | Class Members | File Members

errors.c File Reference

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "arithmetique.h"

Go to the source code of this file.

Classes

struct  linear_exception_holder

Defines

#define FALSE   0
#define TRUE   1
#define MAX_STACKED_CONTEXTS   64
#define exception_debug_message(type)
#define exception_debug_trace(type)   if (linear_exception_debug_mode) { exception_debug_message(type); }
#define same_string_p(s1, s2)   (strcmp((s1),(s2))==0)

Typedefs

typedef int boolean

Functions

char * get_exception_name (unsigned int exception)
void set_exception_callbacks (exception_callback_t push, exception_callback_t pop)
void dump_exception_stack_to_file (FILE *f)
void dump_exception_stack ()
jmp_buf * push_exception_on_stack (int what, char *function, char *file, int line)
void pop_exception_from_stack (int what, char *function, char *file, int line)
void throw_exception (int what, const char *function, const char *file, int line)
void linear_initialize_exception_stack (unsigned int verbose_exceptions, exception_callback_t push, exception_callback_t pop)

Variables

unsigned int overflow_error = 1
unsigned int simplex_arithmetic_error = 2
unsigned int user_exception_error = 4
unsigned int parser_exception_error = 8
unsigned int timeout_error = 16
unsigned int any_exception_error = ~0
unsigned int the_last_just_thrown_exception = 0
int linear_exception_debug_mode = FALSE
unsigned int linear_exception_verbose = 1 | 2 | 16
linear_exception_holder exception_stack [MAX_STACKED_CONTEXTS]
int exception_index = 0
exception_callback_t push_callback = NULL
exception_callback_t pop_callback = NULL
int linear_number_of_exception_thrown = 0


Define Documentation

#define exception_debug_message type   ) 
 

Value:

fprintf(stderr, "%s[%s:%d %s (%d)/%d]\n",                         \
            type, file, line, function, what, exception_index)

Definition at line 218 of file errors.c.

Referenced by pop_exception_from_stack(), push_exception_on_stack(), and throw_exception().

#define exception_debug_trace type   )     if (linear_exception_debug_mode) { exception_debug_message(type); }
 

Definition at line 222 of file errors.c.

Referenced by pop_exception_from_stack(), push_exception_on_stack(), and throw_exception().

#define FALSE   0
 

Definition at line 110 of file errors.c.

#define MAX_STACKED_CONTEXTS   64
 

Definition at line 167 of file errors.c.

Referenced by push_exception_on_stack().

#define same_string_p s1,
s2   )     (strcmp((s1),(s2))==0)
 

Definition at line 258 of file errors.c.

Referenced by pop_exception_from_stack().

#define TRUE   1
 

Definition at line 113 of file errors.c.


Typedef Documentation

typedef int boolean
 

Definition at line 107 of file errors.c.


Function Documentation

void dump_exception_stack void   ) 
 

Definition at line 213 of file errors.c.

References dump_exception_stack_to_file().

Referenced by pop_exception_from_stack(), push_exception_on_stack(), and throw_exception().

void dump_exception_stack_to_file FILE *  f  ) 
 

Definition at line 196 of file errors.c.

References exception_index, and exception_stack.

Referenced by dump_exception_stack().

char* get_exception_name unsigned int  exception  ) 
 

Definition at line 116 of file errors.c.

References any_exception_error, overflow_error, parser_exception_error, simplex_arithmetic_error, timeout_error, and user_exception_error.

void linear_initialize_exception_stack unsigned int  verbose_exceptions,
exception_callback_t  push,
exception_callback_t  pop
 

Definition at line 364 of file errors.c.

References exception_callback_t, linear_exception_verbose, and set_exception_callbacks().

void pop_exception_from_stack int  what,
char *  function,
char *  file,
int  line
 

Definition at line 265 of file errors.c.

References dump_exception_stack(), exception_debug_message, exception_debug_trace, exception_index, exception_stack, pop_callback, same_string_p, and the_last_just_thrown_exception.

jmp_buf* push_exception_on_stack int  what,
char *  function,
char *  file,
int  line
 

Definition at line 229 of file errors.c.

References dump_exception_stack(), exception_debug_message, exception_debug_trace, exception_index, exception_stack, MAX_STACKED_CONTEXTS, push_callback, and the_last_just_thrown_exception.

void set_exception_callbacks exception_callback_t  push,
exception_callback_t  pop
 

Definition at line 176 of file errors.c.

References exception_callback_t, pop_callback, and push_callback.

Referenced by linear_initialize_exception_stack().

void throw_exception int  what,
const char *  function,
const char *  file,
int  line
 

Definition at line 309 of file errors.c.

References dump_exception_stack(), exception_debug_message, exception_debug_trace, exception_index, exception_stack, linear_exception_debug_mode, linear_exception_verbose, linear_number_of_exception_thrown, pop_callback, the_last_just_thrown_exception, and linear_exception_holder::what.


Variable Documentation

unsigned int any_exception_error = ~0
 

Definition at line 96 of file errors.c.

Referenced by AddConstraints(), AddRays(), align_context(), BuildSat(), Chernikova(), Constraints2Polyhedron(), DomainConvex(), DomainCost(), DomainImage(), DomainPreimage(), FindSimple(), Gauss4(), get_exception_name(), Polyhedron_Image(), Polyhedron_Preimage(), Rays2Polyhedron(), Rays_Mult(), Rays_Mult_Transpose(), Remove_Redundants(), SimplifyConstraints(), Stras_DomainSimplify(), and SubConstraint().

int exception_index = 0 [static]
 

Definition at line 169 of file errors.c.

Referenced by dump_exception_stack_to_file(), pop_exception_from_stack(), push_exception_on_stack(), and throw_exception().

linear_exception_holder exception_stack[MAX_STACKED_CONTEXTS] [static]
 

Definition at line 168 of file errors.c.

Referenced by dump_exception_stack_to_file(), pop_exception_from_stack(), push_exception_on_stack(), and throw_exception().

int linear_exception_debug_mode = FALSE [static]
 

Definition at line 140 of file errors.c.

unsigned int linear_exception_verbose = 1 | 2 | 16 [static]
 

Definition at line 141 of file errors.c.

Referenced by linear_initialize_exception_stack(), and throw_exception().

int linear_number_of_exception_thrown = 0
 

Definition at line 192 of file errors.c.

Referenced by throw_exception().

unsigned int overflow_error = 1
 

Definition at line 89 of file errors.c.

Referenced by Enumerate_NoParameters(), get_exception_name(), and Polyhedron_Enumerate().

unsigned int parser_exception_error = 8
 

Definition at line 92 of file errors.c.

Referenced by get_exception_name().

exception_callback_t pop_callback = NULL [static]
 

Definition at line 174 of file errors.c.

Referenced by pop_exception_from_stack(), set_exception_callbacks(), and throw_exception().

exception_callback_t push_callback = NULL [static]
 

Definition at line 173 of file errors.c.

Referenced by push_exception_on_stack(), and set_exception_callbacks().

unsigned int simplex_arithmetic_error = 2
 

Definition at line 90 of file errors.c.

Referenced by get_exception_name().

unsigned int the_last_just_thrown_exception = 0
 

Definition at line 136 of file errors.c.

unsigned int timeout_error = 16
 

Definition at line 93 of file errors.c.

Referenced by get_exception_name().

unsigned int user_exception_error = 4
 

Definition at line 91 of file errors.c.

Referenced by get_exception_name().


Generated on Mon Sep 12 14:48:30 2005 for polylib by doxygen 1.3.5