gravatar
alpar (Alpar Juttner)
alpar@cs.elte.hu
Get rid of exceptions in Preflow
0 1 0
default
1 file changed with 4 insertions and 14 deletions:
↑ Collapse diff ↑
Show white space 6 line context
... ...
@@ -19,7 +19,6 @@
19 19
#ifndef LEMON_PREFLOW_H
20 20
#define LEMON_PREFLOW_H
21 21

	
22
#include <lemon/error.h>
23 22
#include <lemon/tolerance.h>
24 23
#include <lemon/elevator.h>
25 24

	
... ...
@@ -132,17 +131,6 @@
132 131
    typedef typename Traits::Elevator Elevator;
133 132
    typedef typename Traits::Tolerance Tolerance;
134 133

	
135
    /// \brief \ref Exception for uninitialized parameters.
136
    ///
137
    /// This error represents problems in the initialization
138
    /// of the parameters of the algorithms.
139
    class UninitializedParameter : public lemon::Exception {
140
    public:
141
      virtual const char* what() const throw() {
142
        return "lemon::Preflow::UninitializedParameter";
143
      }
144
    };
145

	
146 134
  private:
147 135

	
148 136
    TEMPLATE_DIGRAPH_TYPEDEFS(Digraph);
... ...
@@ -208,7 +196,8 @@
208 196
    struct DefFlowMapTraits : public Traits {
209 197
      typedef _FlowMap FlowMap;
210 198
      static FlowMap *createFlowMap(const Digraph&) {
211
        throw UninitializedParameter();
199
        LEMON_ASSERT(false, "FlowMap is not initialized");
200
        return 0; // ignore warnings
212 201
      }
213 202
    };
214 203

	
... ...
@@ -228,7 +217,8 @@
228 217
    struct DefElevatorTraits : public Traits {
229 218
      typedef _Elevator Elevator;
230 219
      static Elevator *createElevator(const Digraph&, int) {
231
        throw UninitializedParameter();
220
        LEMON_ASSERT(false, "Elevator is not initialized");
221
        return 0; // ignore warnings
232 222
      }
233 223
    };
234 224

	
0 comments (0 inline)