RsBundle  Diff

Differences From Artifact [d523a5feb6]:

  • File src/mcf/problem.rs — part of check-in [8bc7072907] at 2019-08-09 06:56:31 on branch mnetgen-read-error — mmcf: raise error on invalid capacity constraint index (user: fifr size: 18985) [more...]

To Artifact [7573395e95]:

  • File src/mcf/problem.rs — part of check-in [2b78ee841c] at 2019-08-09 07:39:04 on branch trunk — mmcf: check for valid nodes and commodities in supply file. (user: fifr size: 19201)

252
253
254
255
256
257
258






259
260
261
262
263
264
265
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271







+
+
+
+
+
+







            let mut data = line.split_whitespace();
            let node = data.next().ok_or_else(|| MissingSupField("node"))?.parse::<usize>()?;
            let com = data.next().ok_or_else(|| MissingSupField("com"))?.parse::<usize>()?;
            let supply = data.next().ok_or_else(|| MissingSupField("supply"))?.parse::<Real>()?;
            if data.next().is_some() {
                return Err(ExtraSupField);
            }
            if node < 1 || node > nnodes {
                return Err(InvalidNode(node, nnodes));
            }
            if com < 1 || com > ncom {
                return Err(InvalidCom(com, ncom));
            }
            nets[com - 1].set_balance(node - 1, supply)?;
        }

        // read arcs
        let mut arcmap = vec![vec![]; ncom];
        let mut cbase = vec![dvec![]; ncom];